C++ 移动鼠标会导致事件不更新

C++ 移动鼠标会导致事件不更新,c++,sfml,keystroke,C++,Sfml,Keystroke,在过去的两周左右,我一直在做一个有趣的项目,一个游戏。到目前为止,我已经到了发布稳定、没有任何bug的地步。除了一个。这很烦人,尤其是因为我不知道发生了什么 本质上,我使用SFML的isKeyPressed函数检查是否按下了键,并使用Event::KeyPressed事件检查键的释放 错误在于,如果玩家正在移动(按下键),用户移动鼠标,而鼠标移动时释放键(不再按下键),玩家将继续移动,直到有东西明确阻止他这样做 这一系列事件是可复制的,因此它不应该是我的代码,而是SFML处理事件的方式 有谁知道

在过去的两周左右,我一直在做一个有趣的项目,一个游戏。到目前为止,我已经到了发布稳定、没有任何bug的地步。除了一个。这很烦人,尤其是因为我不知道发生了什么

本质上,我使用SFML的isKeyPressed函数检查是否按下了键,并使用Event::KeyPressed事件检查键的释放

错误在于,如果玩家正在移动(按下键),用户移动鼠标,而鼠标移动时释放键(不再按下键),玩家将继续移动,直到有东西明确阻止他这样做

这一系列事件是可复制的,因此它不应该是我的代码,而是SFML处理事件的方式

有谁知道解决这个问题的好办法吗?
(与此有些关联——如果用户“持有”游戏窗口,游戏将冻结,我真的希望这不会发生)。


如果需要任何代码或更多细节(截图等),我很乐意提供。谢谢大家!

如果您想检查按键释放,您应该使用事件::按键释放事件,而不是事件::按键按下,您不这样认为吗


但是,当您使用isKeyPressed时,您不需要检查按键是否释放:只需在每个按下按键的帧上移动播放机即可。

请更新您的问题,以包含一个简单的代码示例,重现该问题。