WM_SETHOTKEY
An
application sends a WM_SETHOTKEY message to a window to associate a hot key
with the window. When the user presses the hot key, the system activates the
window.
WM_SETHOTKEY
wParam = (WPARAM) MAKEWORD(vkey, modifiers) // virtual-key code and modifiers of hot key
lParam = 0; // not used;
must be zero
Parameters
vkey
Value of wParam.
Specifies the virtual-key code and modifiers of the hot key to associate with
the window. The virtual-key code is in the low byte of the parameter and the
modifier flags are in the high byte. Setting this parameter to NULL removes the
hot key associated with a window. The modifier byte can be a combination of the
following flags:
Value |
Meaning |
HOTKEYF_ALT |
ALT key |
HOTKEYF_CONTROL |
CTRL key |
HOTKEYF_EXT |
Extended
key |
HOTKEYF_SHIFT |
SHIFT key |
Return Values
The return
value is one of the following:
Value |
Meaning |
-1 |
The
function is unsuccessful
the hot key is invalid. |
..0 |
The
function is unsuccessful
the window is invalid. |
..1 |
The
function is successful, and no other window has the same hot key. |
..2 |
The
function is successful, but another window already has the same hot key. |
Remarks
A hot key
cannot be associated with a child window.
VK_ESCAPE,
VK_SPACE, and VK_TAB are invalid hot keys.
When the user
presses the hot key, the system generates a WM_SYSCOMMAND message with wParam
equal to SC_HOTKEY.
A window can
only have one hot key. If the window already has a hot key associated with it,
the new hot key replaces the old one. If more than one window has the same hot
key, the window that is activated by the hot key is random.
These hot
keys are unrelated to the hot keys set by RegisterHotKey.
See Also