读书人

按键有关问题

发布时间: 2012-03-02 14:40:29 作者: rapoo

按键问题
我在用纯API写炸弹人游戏,当我按住一个键不放的时候比如“→”键,人物总是先走一步停顿一会然后才连续的走下去,因为接到当我连续按键的时候第一个字符总是和第二个字符之间有一定的延迟,而往后的案件这种延迟几乎没有,怎么样才能在程序中解决这个问题?怎么样才能消除第一个字符和第二个字符之间的时间差异?用WM_KEYDOWN消息的修改吗?
另外的问题是:如果我一直按着“→”键,然后我按空格放炸弹的时候,WM_KEYDOWN会接受空格的消息,之后我向右的按键消息也就没有了,怎么样才能保持按键连续的情况下能够接受其他的按键请求?

[解决办法]
windows的API不能同时接受多按键消息
建议你使用DirectX的DirectInput
[解决办法]
以前我用线程解决来看这个问题
首先打开一个线程监听
KEYDOWN触发一个事件,线程开始移动物体
KEYUP重置事件,线程停止移动物体

读书人网 >C++

热点推荐