我是 C# 的新手(从 Web 开发领域转过来)。
无论如何,我正在制作一个简单的背景颜色更改程序,它接受用户的输入。我有三个颜色变量(我将其传入:backgroundColor = new Color(redIntensity, greenIntensity, blueIntensity);
)
然后在 Update()
方法中我有这个:
//[colorIntensity] = 0 then count up...when pressed
//Changes background color
KeyboardState keyState = new KeyboardState();
if (keyState.IsKeyDown(Keys.R))
{
redIntensity++;
}
以上代码无效!但是,如果我更改:
if(keyState.IsKeyDown(Keys.R)) ...
收件人:
if(keyState.IsKeyUp(Keys.R)) ...
工作正常...
那么,有什么建议吗?
编辑:我正在使用 XNA Framework。
最佳答案
您正在创建一个空的 KeyboardState
结构,因此它将始终显示所有键。
使用Keyboard.GetState
方法获取当前状态:
KeyboardState keyState = Keyboard.GetState();
关于c# - .IsKeyDown(Keys keys) 不工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23727374/