Windows API-用多个键组合注册热键
Windows API - registering a hotkey with multiple keys combination
因此,例如,我可以轻松地注册一个热键,该热键是Shift,Alt(mod键)和向上箭头的组合:
RegisterHotKey(NULL, TOP, MOD_SHIFT | MOD_ALT, VK_UP);
这可以正常工作,但是我追求的是用与上面相同的键以及另一个普通键(如左箭头)注册热键,因此组合将是Shift,Alt,Alt,Up Arrow,左箭头。
函数中没有其他参数的空间,我尝试做一个位或左箭头键,例如
VK_UP | VK_LEFT
...但是它不起作用。如果有人以前遇到了这个问题或知道我如何继续帮助!
Windows Hotkeys不支持多个(非模型)密钥。您不能刻度或多个VK_*
值,只能组合MOD_*
值。
如果您急需此功能,则必须使用低级键盘钩并自己跟踪钥匙。钩子会影响全球系统性能,应尽可能避免。
如果您决定这样做,则必须记住Windows用户不习惯这种方式按Hotkeys,只有菜单允许某种类似的模式,但您不必持有 alt 修改器使这些工作。您还必须记住使用StickyKeys和其他可访问性功能来测试您的钩子...
相关文章:
- 如何在OMNET++中指定与命令行参数组合的输出文件名
- 无法将结构注册为增强几何体3D点
- 可组合的lambda/std::函数与std::可选
- 如何将两个不同矢量的同一位置的两个元素组合在一起
- 如何使用AngelScript注册SFML Vector2运算符
- 混合组合和继承的C++问题
- 我需要将多个函数组合为一个函数
- 构建可组合有向图(扫描仪生成器的汤普森构造算法)
- 通过组合不同的类型来创建唯一的id
- 用常见虚拟函数实现的任意组合来实现派生类的正确方法是什么
- 在遍历处理程序的向量时注册和注销处理程序
- 有没有任务栏API可以立即应用注册表更改
- 模板元编程:如何将参数包组合成新的参数包
- 使用QJsEngine在Qt中注册自定义类型
- 检查向量是否具有所有可能的字符组合
- 检查注册表项是否链接到(或副本)另一个注册表项
- 如何在加密++中将两个源组合成新的源
- 根中的组合
- 如何使用 TStyleManager::UnRegisterStyle() 取消注册样式
- Windows API-用多个键组合注册热键