WM_COMMAND
The WM_COMMAND
message is sent when the user selects a command item from a menu, when a
control sends a notification message to its parent window, or when an
accelerator keystroke is translated.
WM_COMMAND
wNotifyCode = HIWORD(wParam); // notification code
wID = LOWORD(wParam); // item, control, or accelerator
identifier
hwndCtl = (HWND) lParam; // handle of control
Parameters
wNotifyCode
Value of the
high-order word of wParam. Specifies the notification code if the
message is from a control. If the message is from an accelerator, this
parameter is 1. If the message is from a menu, this parameter is 0.
wID
Value of the
low-order word of wParam. Specifies the identifier of the menu item,
control, or accelerator.
hwndCtl
Value of lParam.
Identifies the control sending the message if the message is from a control.
Otherwise, this parameter is NULL.
Return Values
If an
application processes this message, it should return zero.
Remarks
Accelerator
keystrokes that select items from the window menu are translated into WM_SYSCOMMAND
If an
accelerator keystroke occurs that corresponds to a menu item when the window
that owns the menu is minimized, no WM_COMMAND message is sent. However,
if an accelerator keystroke occurs that does not match any of the items in the
window s menu or in the window menu, a WM_COMMAND message is sent, even
if the window is minimized.
If an
application enables a menu separator, the system sends a WM_COMMAND message
with the low-word of the wParam parameter set to zero when the user
selects the separator.
See Also