Сообщение WM_COMMAND отправляется тогда, когда пользователь выбирает командный пункт из меню, когда орган управления отправляет уведомительное сообщение своему родительскому окну, или когда транслируется нажатие клавиши - ускорителя.
Синтаксис
WM_COMMAND wNotifyCode = HIWORD(wParam); // код предупреждения wID = LOWORD(wParam); // идентификатор пункта, органа управления или клавиши-ускорителя hwndCtl = (HWND) lParam; // дескриптор органа управления
Параметры
wNotifyCode
Значение старшего слова wParam. Устанавливает код предупреждения, если сообщение от органа управления. Если сообщение от клавиши - ускорителя, этот параметр равен 1. Если сообщение от меню, этот параметр 0.
wID
Значение младшего слова wParam. Устанавливает идентификатор пункта меню, органа управления или клавиши - ускорителя.
hwndCtl
Значение lParam. Идентифицирует орган управления, отправляющий сообщение, если сообщение от органа управления. Иначе, этот параметр имеет значение ПУСТО (NULL).
Возвращаемые значения
Если приложение обрабатывает это сообщение, оно должно возвратить нуль.
Замечания
Нажатия клавиш - ускорителей, которые выбирают пункты меню окна, транслируются в сообщения WM_SYSCOMMAND.
Если происходит нажатие клавиши - ускорителя, которое соответствует пункту меню, когда окно, которое владеет меню, свернуто, сообщение WM_COMMAND не отправляется. Однако, если происходит нажатие клавиши - ускорителя, которое не соответствует какому-либо из пунктов меню в окне или в меню окна (системном), сообщение WM_COMMAND отправляется, даже если окно свернуто.
Если прикладная программа включает разделитель меню, то когда пользователь выбирает разделитель, система отправляет сообщение WM_COMMAND с младшим словом параметра wParam установленным в нуль.
Смотри также
WM_SYSCOMMAND
Размещение и совместимость WM_COMMAND
Windows NT Да Win95 Да Win32s Да Импортируемая библиотека - Заголовочный файл winuser.h Unicode Нет Замечания по платформе Не имеется