我想使用键盘输入作为功能的参数。我正在尝试获取一个返回char的键盘输入:按下的键。
比我现在有更好的方法吗?
char getKey() {
if (sf::Keyboard::isKeyPressed(sf::Keyboard::A))
{
return 'A';
}
if (sf::Keyboard::isKeyPressed(sf::Keyboard::A))
{
return 'A';
}
if (sf::Keyboard::isKeyPressed(sf::Keyboard::B))
{
return 'B';
}
if (sf::Keyboard::isKeyPressed(sf::Keyboard::C))
{
return 'C';
}
//...
return '\0';
}
我知道您可以使用TextEntered,但是我不想获取其他ASCII键(å,∫,ç,...)
是否有一种更简单的方法而无需仔细阅读每个字母?
您可以只处理代码中的事件
while (window.pollEvent(event))
{
if (event.type == sf::Event::Closed)
{
window.close();
break;
}
else if(event.type == sf::Event::KeyPressed)
{
const sf::Keyboard::Key keycode = event.key.code;
if (keycode == sf::Keyboard::A)
std::cout << "A is pressed";
}
}