如何在视觉c ++项目中添加箭头键作为修饰键Microsoft
How to add arrow key as modifier key in Microsoft visual c++ project
我需要根据按键事件移动一个对象.我能够一次检测一个键,但发现很难同时检测两个键,而 ctrl、alt 等修饰键可以同时检测,并且只有修饰键才有可能。我只需要一些帮助来同时检测两个箭头键,以及这些键值存储在视觉工作室中的位置。
加速器系统无法做到这一点(只能检测单个"正常"键以及某些修饰符(。
您可以使用 GetKeyboardState 一次获取所有虚拟键的表,然后进行测试,或者您可以跟踪哪些键已按下以及释放了哪些键(通过处理 WM_KEYDOWN/WM_KEYUP 和 WM_SYSKEYDOWN/WM_SYSKEYUP 消息(。您还可以调用 GetAsyncKeyState,它返回单个虚拟键的当前状态(也是配对虚拟键的状态(。
我可能会通过使用键状态变量来做到这一点,当WM_KEYDOWN进来时,我会打开该标志,然后调用一个箭头处理函数来检查所有箭头标志变量的状态。WM_KEYUP只会关闭旗帜。
相关文章:
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- 如何在C++中从两个单独的for循环中添加两个数组
- POCO::PostgreSQL:如何将std::vector支持添加到`Binder::bind`
- 如何仅为一个函数添加延迟
- 如何防止 c++ 在从浮点型转换为双精度型(不适用于 IO)时添加额外的小数?
- 使用std::transform将一个范围的元素添加到另一个范围中
- 如何将更多文件夹添加到c++include路径
- 如何将元素添加到数组的线程安全函数?
- QT通过C++添加映射QML项目
- 如何将点击的信号和插槽添加到qt中的自定义按钮中
- 如何使用重载的相等(==)运算符向测试用例添加描述
- 为什么Mat类的两个对象可以在不重载运算符+的情况下添加
- 如何防止clang格式在流运算符调用之间添加换行符<<
- 只能向C++添加一定数量的字符
- 如何添加预防措施以绕过未注册Microsoft.ACE.OLEDB.12.0?
- 如何在视觉c ++项目中添加箭头键作为修饰键Microsoft
- Microsoft计算器中的代码在哪里添加两个数字
- 将现有的.h和.c文件添加到Microsoft Visual Studio 2010 c++项目中
- 将 /EHa 添加到使用 Visual C++ Compiler 的 QtCreator Microsoft
- 在Microsoft Visual C++2010学习版中添加资源