我目前正在检查程序中的键盘状态:
SlimDX.DirectInput.KeyboardState keyboardState = keyboard.GetCurrentState();
并检测如下按键:
if(keyboardState.IsPressed(SlimDX.DirectInput.Key.Q))...
我无法弄清楚如何检测任何按键,而不是特定按键。在浏览SlimDX API文档后,我无法将手指放在上面。毫无疑问,我可能会遗漏一些非常简单的东西。
答案 0 :(得分:3)
KeyboardState类有一个PressedKeys
只读属性,其中包含IList<Key>
个按键。
您可以检查此列表是否为空,以便知道没有任何内容被按下(kbd.PressedKeys.Count == 0
)。
如果您想响应键盘事件并避免轮询模式(显式检查按键),您应该查看SlimDX.RawInput
命名空间并使用按键事件处理,类似于WinForms。