Владельцем меню и WM_MENUCHAR сообщение

Меню не владельцем меню можно задать меню мнемоник, вставив символ подчеркивания рядом с символа в строке меню. Это позволяет пользователю выбрать в меню, введите alt и назначенным символом меню. В меню, рисуемого владельцем нельзя указать меню назначенным таким образом. Вместо этого ваше приложение должно обработать WM_MENUCHAR для предоставления владельцем меню с меню мнемоник.

WM_MENUCHAR сообщение отправляется, когда пользователь вводит меню мнемоник, который не соответствует ни одному из предопределенных мнемоник текущего меню. Значение, содержащееся в wParam определяет символ ASCII, который соответствует ключу, нажата с клавишей alt . Младшее слово lParam указывает тип выбранного меню и может быть на следующих значений:

Старшее слово lParam содержит дескриптор меню текущего меню. Окно с владельцем меню может обрабатывать WM_MENUCHAR следующим:

случай WM_MENUCHAR:
      nIndex = определяет индекс элемента меню, чтобы выбрать из
               символ, который был введен и ручкой в текущий
               меню.
      возвращение MAKELRESULT (nIndex, 2) 

Два в старшее слово возвращаемого значения сообщает системе младшее слово возвращаемого значения содержит отсчитываемый с нуля индекс элемента меню, чтобы выбрать.

Следующие константы (определенный начиная с Windows 95 и Windows NT версии 4.0) соответствуют возможных возвращаемых значений из WM_MENUCHAR сообщения:

Постоянный Значение Значение
MNC_IGNORE 0 Система должна отказаться от символа пользователь нажал и создать короткий звуковой сигнал на системный динамик.
MNC_CLOSE 1 Система должна закрыть активного меню.
MNC_EXECUTE 2 Система должна выбрать элемент, указанный в младшее слово возвращаемого значения. Окно-владелец получает сообщения WM_COMMAND.
MNC_SELECT 3 Система должна выбрать элемент, указанный в младшее слово возвращаемого значения.