【问题标题】:XNA - Keyboard InputXNA - 键盘输入
【发布时间】:2010-09-28 02:18:26
【问题描述】:

我今天刚开始使用 XNA Framework 4.0,我想知道从键盘获取输入最简单的方法是什么。我认识到 C# 中有很多 C++,但它的整个 Java 方面对我来说是陌生的。这与 XNA 相结合有点令人困惑,所以请具体并举例说明。谢谢。

【问题讨论】:

    标签: text input keyboard xna


    【解决方案1】:

    如果您习惯在 VS 中使用对象浏览器,我建议您查看 Microsoft.Xna.Framework.Input.Keyboard/Keyboardstate。这些条目将根据现成的功能向您展示您可以使用的功能。或者,您可以查看 MSDN 或按照 Creator's Club 上的教程进行操作。我将发布一个快速的 sn-p 来检查特定的击键。

    currentState = Keyboard.GetState();
    
    if(currentState.IsKeyDown(theKey) && previousState.IsKeyUp(theKey))
    {
       //Do something here
    }
    
    previousState = currentState;
    

    theKey 是在此 sn-p 范围之外定义的参数。您可以将 theKey 设置为您希望在按下时触发某些特定程序行为的特定值(在上面片段中的注释位置)。 theKey 定义为:

    Keys theKey
    

    previousState 和 currentState 定义为:

    private static KeyboardState currentState;
    private static KeyboardState previousState;
    

    虽然这样做可能不是最漂亮的方式,但它可以工作并且是一个相当简单的构建示例。希望对您有所帮助。

    【讨论】:

    • 这确实有帮助。感谢:D。我最终发现了如何做到这一点,并以完全相同的方式做到了。但是,您向我展示的内容实际上帮助我优化了代码。再次感谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-01
    • 2011-02-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多