afx_msg LRESULT OnMenuChar( UINT nChar, UINT nFlags, CMenu* pMenu );
Возвращаемое значение
Старшее слово возвращаемого значения должно содержать один из следующих кодов команды:
0 Сообщает, чтобы Windows отбросил символ, что пользователь нажал и создает короткий гудок на динамике системы. 1 Сообщает, чтобы Windows закрыл текущее меню. 2 Сообщает Windows, что слово младшего разряда возвращаемого значения содержит номер элемента для специфического элемента. Этот элемент выбран Windows.
Слово младшего разряда игнорируется, если старшее слово содержит 0 или 1. Прикладные программы должны обработать это сообщение, когда клавиши акселератор используется чтобы выбрать точечные рисунки, помещенные в меню.
Параметры
nChar
В зависимости от параметров сборки определяет символ ANSI или UNICODE, который нажал пользователь.
nFlags
Содержит флажок MF_POPUP, если меню - всплывающее меню. Это содержит флажок MF_SYSMENU, если меню - управляющее меню.
pMenu
Содержит указатель на выбранный CMenu. Указатель может быть временный и не должен быть сохранен.
Замечания
Рамка вызывает эту функцию когда пользователь нажимает символ мнемонической схема меню, который не соответствует любой из предопределенной мнемоники в текущем меню. Оно посылается CWnd который обладает меню. OnMenuChar также вызван, когда пользователь нажимает ALT и любую другую клавишу, даже если клавиша не соответствует мнемоническому символу. В этом случае, pMenu указывает на меню, принадлежащее CWnd, и nFlags - 0.
Эта функция вызвана рамкой, чтобы позволить Вашей прикладной программе обрабатывать сообщение Windows. Параметры, переданные к вашей функции отражают параметры, полученные рамкой, когда сообщение было получено. Если Вы вызываете реализацию базового класса этой функции, та реализация использует параметры, первоначально переданные с сообщением, а не параметры, которые Вы обеспечиваете функции.