我有一个中断,在键盘按键上给我协调键。当数字锁打开时,按键会显示为 Numpad1、Numpad2 等。当数字锁关闭时,数字键盘键会变成 End、Left、Right、Up、PageLock...我不能让这种情况发生,因为我需要将这些键(左、右......)保留为实际的箭头键。我宁愿输入完全不受数字锁定的影响。然而,我似乎无法缓解这个问题,因为我直接从 XNA 获取输入。其他人可以确认 VS 2008 上的 XNA 3.1 中发生这种情况吗?
XNA内部使用win32函数GetKeyboardState http://msdn.microsoft.com/en-us/library/ms646299(v=vs.85).aspx确定键盘状态。此功能无法区分数字键盘、方向键和插入组。
显然你可以通过使用来区分按键WM_KEYDOWN message http://msdn.microsoft.com/en-us/library/ms646280(v=vs.85).aspx(及其朋友)。
我将保留在 XNA 应用程序中获取 win32 消息所需的互操作以及如何检查消息数据作为练习。
(我个人建议简单地修改你的控制方案。或者只是观察用户的数字锁定状态。一般来说,这是一个bad idea接管像数字锁定键这样的功能!)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)