WM_SYSCHAR消息

TranslateMessage 函数翻译WM_SYSKEYDOWN消息时,使用键盘焦点发布到窗口。 它指定系统字符键的字符代码,即按下 ALT 键时按下的字符键。

#define WM_SYSCHAR                      0x0106

参数

wParam

窗口菜单键的字符代码。

lParam

重复计数、扫描代码、扩展键标志、上下文代码、以前的键状态标志和转换状态标志,如下表所示。

Bits 含义
0 15
当前消息的重复计数。 该值是用户按住键后自动重复击键的次数。 如果击键的保持时间足够长,则发送多个消息。 但是,重复计数不是累积的。
16 23
扫描代码。 该值取决于原始设备制造商 (OEM)。
24
指示键是否为扩展键,例如显示在增强型 101 键或 102 键键盘上的右侧 Alt 和 Ctrl 键。 如果是扩展键,则值为 1;否则为 0。
25 28
保留;请勿使用。
29
上下文代码。 如果在按住 ALT 键的同时按该键,则值为 1;否则值为 0。
30
上一个键状态。 如果在发送消息之前键处于按下状态,则值为 1;如果键处于未按下状态,则值为 0。
31
转换状态。 如果释放了键,则值为 1;如果按下了键,则值为 0。

有关详细信息,请参阅 击键消息标志

返回值

如果应用程序处理此消息,则应返回零。

备注

当上下文代码为零时,可以将消息传递给 TranslateAccelerator 函数,该函数将处理它,就像它是标准键消息而不是系统字符键消息一样。 这样,即使活动窗口没有键盘焦点,也可以将快捷键与活动窗口一起使用。

对于增强型 101 键和 102 键键盘,扩展键是键盘main部分的右 Alt 键和 CTRL 键;数字键盘左侧的 INS、DEL、HOME、END、PAGE UP、PAGE DOWN 和箭头键;PRINT SCRN 键;BREAK 键;NUMLOCK 键;数字键盘中的除号 (/) 和 ENTER 键。 其他键盘可能支持 参数中的扩展键位。

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Winuser.h (包括 Windows.h)

另请参阅