在 MonoGame 中获取窗口坐标

pha*_*haz 2 c# windows monogame

我实际上想做的是在窗口游戏中获取鼠标坐标。到目前为止,我只找到了检索鼠标屏幕坐标的方法。因此,我想知道窗口的位置,以便我可以从鼠标的屏幕坐标中减去该位置以获得鼠标的窗口坐标。

这可能吗?如果可能的话,如何实现?

cra*_*mes 5

您尝试过Mouse.GetState吗?它返回一个带有 X 和 Y 属性的 MouseState。MSDN 上的文档非常稀疏,但如果您仔细查看特定XY属性的文档,您会发现它返回相对于窗口左上角的位置,这更符合您的需求。

MouseState.X - 鼠标光标相对于游戏窗口左上角的水平位置。

MouseState.Y - 鼠标光标相对于游戏窗口左上角的垂直位置。

这样做的优点是它不特定于平台,因此如果您将来将游戏移植到另一个平台,则无需更改代码。