我目前正在 XNA 中开发游戏。我想在游戏中添加一个光标(不是标准的 Windows 光标)。我已经将 Sprite 添加到我的内容文件夹中。我有一种找到鼠标位置的方法,但我不知道应该如何在窗口中显示光标。

这是我用来查找鼠标位置的方法(我在Game1类的开头实例化了一个“MouseState”类):

public int[] getCursorPos()
    {
        cursorX = mouseState.X;
        cursorY = mouseState.Y;

        int[] mousePos = new int[] {cursorX, cursorY};
        return mousePos;
    }

最佳答案

为光标图像加载Texture2D并简单地绘制它。

class Game1 : Game
{
  private SpriteBatch spriteBatch;

  private Texture2D cursorTex;
  private Vector2 cursorPos;


  protected override void LoadContent()
  {
    spriteBatch = new SpriteBatch(GraphicsDevice);
    cursorTex = content.Load<Texture2D>("cursor");
  }

  protected override Update(GameTime gameTime() {
    cursorPos = new Vector2(mouseState.X, mouseState.Y);
  }

  protected override void Draw(GameTime gameTime)
  {
    spriteBatch.Begin();
    spriteBatch.Draw(cursorTex, cursorPos, Color.White);
    spriteBatch.End();
  }
}

关于c# - 在XNA/C#中添加自定义光标?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5371657/

10-10 16:05