繁体   English   中英

在MonoGame中获取窗口坐标

[英]Getting the window coordinates in MonoGame

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

这可能吗?如果可以,怎么办?

您是否尝试过Mouse.GetState 它返回带有X和Y属性的MouseState。 MSDN上的文档非常稀疏,但是如果您仔细查看特定XY属性的文档,您会发现它返回相对于窗口左上角的位置,该位置与您的操作更加一致。

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

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

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

您是否尝试过引用System.Windows.Forms并通过Window.Handle从handle获取Form,然后从Form获取位置?

Point WindowCoordinates = System.Windows.Forms.Form.FromHandle(Window.Handle).Location;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM