<a href="http://msdn.microsoft.com/en-us/library/windows/desktop/bb775235%28v=vs.85%29.aspx" rel="noreferrer noopener nofollow">HKM_GETHOTEKY</a>
返回虚拟键码和修饰符,但它们与普通虚拟键码不同? HOTKEYF_EXT
的目的是什么?我该如何使用它?
如果我按 F5,热键控件返回 0x74
这是 VK_F5
,但是当我按下右箭头键时,它返回 0x27
这是 VK_RIGHT
并且 HOTKEYF_EXT 位在修饰符上设置。如果我使用 <a href="http://msdn.microsoft.com/en-us/library/windows/desktop/bb775236%28v=vs.85%29.aspx" rel="noreferrer noopener nofollow">HKM_SETHOTKEY</a>
与 VK_RIGHT
作为虚拟键且没有修饰符,它显示 "Num 6"
我觉得这很奇怪,我需要能够将任何虚拟键传递给热键控制窗口,因此我需要理解这个 HOTKEYF_EXT
修饰符。
最佳答案
“扩展键”是添加到原始 IBM PC 键盘布局的键。看起来像这样:
请注意它还没有专用的光标键,它们与右侧的小键盘集成在一起。并注意右箭头如何匹配 Numpad-6。添加到后来的键盘布局(具有 101 个键的增强型布局)的专用右箭头键由 HOTKEYF_EXT 位区分。
关于c++ - 热键控制键码困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19099969/