Сообщение WM_COMMAND отправляется тогда, когда пользователь выбирает командный пункт из меню, когда орган управления отправляет уведомительное сообщение своему родительскому окну, или когда транслируется нажатие клавиши - ускорителя.
Синтаксис
WM_COMMAND WPARAM wParam LPARAM lParam; |
Параметры
wParam
Старшее слово определяет код предупреждения, если это сообщение от органа управления. Если сообщение от клавиши - ускорителя, этот параметр равен 1. Если сообщение от меню, этот параметр 0.Младшее слово определяет идентификатор пункта меню, органа управления, или ускорителя клавиатуры (акселератора).
lParam
Дескриптор органа управления, отправляющего сообщение, если сообщение от органа управления. Иначе, этот параметр имеет значение ПУСТО (NULL).Возвращаемые значения
Если приложение обрабатывает это сообщение, оно должно возвратить нуль.
Замечания
Нажатия клавиши ускорителя клавиатуры, которые выбирают пункты меню окна, преобразуются в сообщения WM_SYSCOMMAND .
Если происходит нажатие клавиши ускорителя клавиатуры, которая соответствует пункту меню, когда окно, владеющее меню свернуто, сообщение WM_COMMAND не отправляется. Однако, если происходит нажатие акселератора, который не соответствует ни одному из пунктов в меню окна или в системном меню, сообщение WM_COMMAND посылается, даже если окно свернуто.
Если прикладная программа включает разделитель меню, то, когда пользователь выбирает разделитель, система отправляет сообщение WM_COMMAND с младшим словом параметра wParam установленным в нуль.
Windows 98/Me, Windows 2000/XP: Если меню в члене MENUINFO .dwStyle определяется со значением MNS_NOTIFYBYPOS, вместо WM_COMMAND отправляется WM_MENUCOMMAND.
Смотри также
Краткий обзор Меню, HIWORD, LOWORD, MENUINFO, WM_MENUCOMMAND, WM_SYSCOMMAND
Размещение и совместимость WM_COMMAND |
|
Windows. NET Server |
Да |
Windows XP |
Да |
Windows 2000 |
Да |
Windows NT |
Да версии 3.1 и выше |
Windows Me |
Да |
Windows 98 |
Да |
Windows 95 |
Да |
Минимальная версия DLL |
Нет |
Заголовочный файл |
|
- объявлено в |
Winuser.h |
- включено в |
Windows.h |
Unicode |
Нет |
Замечания по платформе |
Не имеется |