Сообщение WM_MENUCHAR отправляется тогда, когда меню активно, а пользователь нажимает клавишу, которая не соответствует какой-либо мнемонической схеме или клавише ускорения. Это сообщение отправляется в окно, которое владеет меню.
WM_MENUCHAR WPARAM wParam LPARAM lParam; |
wParam
Младшее слово устанавливает символьный код, который соответствует клавише, которую пользователь нажал.
Старшее слово устанавливает тип активного меню. Этим параметром может быть одно из ниже перечисленных значений.
Значение |
Предназначение |
| MF_POPUP | "Выпадающее" меню, подменю или контекстное меню. |
| MF_SYSMENU | Системное меню окна. |
lParam
Дескриптор активного меню.
Приложение, которое обрабатывает это сообщение, должно возвратить одно из ниже перечисленных значений в старшем слове возвращаемого значения.
Значение |
Предназначение |
| MNC_IGNORE | Сообщает системе, что она должна проигнорировать символ нажатый пользователем и создать короткий звуковой сигнал в системном динамике. |
| MNC_CLOSE | Сообщает системе, что она должна закрыть активное меню. |
| MNC_EXECUTE | Сообщает системе, что она должна выбрать пункт, указанный в младшем слове возвращаемого значения. Окно владелец получает сообщение WM_COMMAND. |
| MNC_SELECT | Сообщает системе, что она должна выбрать элемент, указанный в младшем слове возвращаемого значения. |
Младшее слово игнорируется, если старшее слово содержит 0 или 1.
Приложение должно обработать это сообщение, когда ускоритель используется, чтобы выбрать пункт меню, который изображается на экране точечным рисунком.
Обзор Ускорители клавиатуры, Уведомления, используемые ускорителями клавиатуры, HIWORD, LOWORD
| Размещение и совместимость WM_MENUCHAR | ||
| К | Windows XP | Да |
| л | Windows 2000 Professional | Да |
| и | Windows NT Workstation | Да версии 3.1 и выше |
| е | Windows Me | Да |
| н | Windows 98 | Да |
| т | Windows 95 | Да |
| С | Windows Server 2003 | Да |
| е | Windows 2000 Server | Да |
| р | Windows NT Server | Да версии 3.1 и выше |
| в | ||
| е | ||
| р | ||
| Используемая библиотека | - | |
| Используемая DLL | - | |
| Заголовочный файл | ||
| - объявлено в | Winuser.h | |
| - включено в | Windows.h | |
| Unicode | Нет | |
| Замечания по платформе | Не имеется | |