WM_SETHOTKEY消息
发送到窗口以将热键与窗口相关联。 当用户按下热键时,系统将激活窗口。
#define WM_SETHOTKEY 0x0032
参数
-
wParam
-
低序字指定要与窗口关联的虚拟键代码。
高序字可以是来自 CommCtrl.h 的以下一个或多个值。
将 wParam 设置为 NULL 会删除与窗口关联的热键。
值 含义 - HOTKEYF_ALT
- 0x04
Alt 键 - HOTKEYF_CONTROL
- 0x02
CTRL 键 - HOTKEYF_EXT
- 0x08
扩展键 - HOTKEYF_SHIFT
- 0x01
SHIFT 键 -
lParam
-
未使用此参数。
返回值
返回值为下列值之一。
返回值 | 说明 |
---|---|
|
函数不成功;热键无效。 |
|
函数不成功;窗口无效。 |
|
函数成功,并且没有其他窗口具有相同的热键。 |
|
函数成功,但另一个窗口已具有相同的热键。 |
备注
热键不能与子窗口相关联。
VK_ESCAPE、 VK_SPACE和 VK_TAB 是无效的热键。
当用户按下热键时,系统会生成一条 WM_SYSCOMMAND 消息, 其中 wParam 等于 SC_HOTKEY , lParam 等于窗口的句柄。 如果此消息传递给 DefWindowProc,则系统会将窗口的最后一个活动弹出窗口 (如果它) 存在,则窗口本身 ((如果没有弹出窗口) 到前台)。
一个窗口只能有一个热键。 如果窗口已有与其关联的热键,则新的热键将替换旧热键。 如果多个窗口具有相同的热键,则由热键激活的窗口是随机的。
这些热键与 RegisterHotKey 设置的热键无关。
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 |
Windows 2000 Server [仅限桌面应用] |
标头 |
|