将点坐标转换为JavaFX中的屏幕坐标?
问题描述:
通过几个SO帖子后,我仍然没有找到满意的结果。将点坐标转换为JavaFX中的屏幕坐标?
我有,如上所述,一个点,我需要将其从本地转换为屏幕。 当我在Swing工作时,SwingUtilities.convertPointToScreen
函数可以正常工作,但我在JavaFX中缺少替代方法。
答
一个the localToScreen
methods可用于在Node
变换坐标屏幕坐标的坐标系:
Node node = ...
Point2D screenCoordiantes = node.localToScreen(localX, localY);
请注意,这只是作品,如果节点添加到场景和它所示一个窗口。
+0
这似乎导致NullPointerException – user3597322
+1
@ user3597322您需要首先将此节点添加到场景并在窗口中显示场景。 – f*
只是要抛出一点,总是很难知道用户的屏幕大小。由于这个原因,我相信通常认为使用相对点的做法更好,这样您的应用程序就可以使用所有的屏幕尺寸。 – Brydenr
*“我需要将它从本地转换为屏幕。”*为什么? –
我所记录的点是鼠标点击,我需要能够重播它们 – user3597322