【问题标题】:An object reference is required for the non-static field, method, or property 'Microsoft.Xna.Framework.Input.MouseState.X.get'?非静态字段、方法或属性“Microsoft.Xna.Framework.Input.MouseState.X.get”需要对象引用吗?
【发布时间】:2013-07-25 08:04:38
【问题描述】:

所以,我想在光标前绘制一个纹理。这是我的代码:

private void DrawCursor()
{
    //Draws cursor
    Vector2 Mouseplace = new Vector2(MouseState.X, MouseState.Y);
    spriteBatch.Draw(cursor, Mouseplace, Color.White );
}

我得到这个错误:

错误 1 ​​非静态字段需要对象引用, 方法或属性“Microsoft.Xna.Framework.Input.MouseState.X.get” 还有这个:

错误 2 非静态字段需要对象引用, 方法或属性“Microsoft.Xna.Framework.Input.MouseState.Y.get” 如何解决这些问题?

(对不起,如果这是一个菜鸟问题)

【问题讨论】:

    标签: c# xna compiler-errors cursor xna-4.0


    【解决方案1】:

    MouseState 不是静态类。您需要这样做:

    var mouseState = Mouse.GetState();
    Vector2 Mouseplace = new Vector2(mouseState.X, mouseState.Y);
    

    等等。 X 和 Y 是 MouseState instance 的公共属性。

    【讨论】:

      【解决方案2】:

      看起来MouseState 根本不是static

      您需要创建它的一个实例才能使用XY 属性..

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多