Поделиться через


сообщение WM_MENUCHAR

Отправляется, когда меню активно, и пользователь нажимает клавишу, которая не соответствует ни одному ключу mnemonic или акселератору. Это сообщение отправляется в окно, которое владеет меню.

#define WM_MENUCHAR                     0x0120

Параметры

wParam

Слово с низким порядком указывает код символа, соответствующий нажатию клавиши, нажатой пользователем.

Слово с высоким порядком указывает тип активного меню. Этот параметр может принимать одно из указанных ниже значений.

Значение Значение
MF_POPUP
0x00000010L
Раскрывающееся меню, подменю или контекстное меню.
MF_SYSMENU
0x00002000L
Меню окна.

lParam

Дескриптор активного меню.

Возвращаемое значение

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

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

Замечания

Слово с низким порядком игнорируется, если слово высокого порядка содержит значение 0 или 1.

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

Requirements

Требование Значение
Минимальная версия клиента
Windows 2000 Professional [только классические приложения]
Минимальная версия сервера
Windows 2000 Server [только классические приложения]
Верхний колонтитул
Winuser.h (включая Windows.h)

См. также

Ссылка

HIWORD

LOWORD

Концептуальной

Ускорители клавиатуры