【发布时间】:2016-03-09 15:03:06
【问题描述】:
要使用 SFML 获取用户输入,我使用此函数
char SFMLDisplayManager::handleEvents()
{
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Z))
return ('z');
if (sf::Keyboard::isKeyPressed(sf::Keyboard::S))
return ('s');
if (sf::Keyboard::isKeyPressed(sf::Keyboard::Q))
return ('q');
if (sf::Keyboard::isKeyPressed(sf::Keyboard::D))
return ('d');
return (0);
}
然后,为了减慢我的程序,我使用
sf::sleep((sf::milliseconds(150)));
这很好用,但是当我快速按下一个键时,有时我没有得到输入。 我想这是因为我在睡眠期间按了他们的键。
但我不知道如何解决这个问题。
有想法吗?谢谢
【问题讨论】:
-
您应该阅读 SFML 教程。如果你像你所知道的那样处理时间管理,你总会遇到问题。您需要使用另一种方法。说真的,阅读教程,它们很好。