将点坐标转换为JavaFX中的屏幕坐标?

问题描述:

通过几个SO帖子后,我仍然没有找到满意的结果。将点坐标转换为JavaFX中的屏幕坐标?

我有,如上所述,一个点,我需要将其从本地转换为屏幕。 当我在Swing工作时,SwingUtilities.convertPointToScreen函数可以正常工作,但我在JavaFX中缺少替代方法。

+0

只是要抛出一点,总是很难知道用户的屏幕大小。由于这个原因,我相信通常认为使用相对点的做法更好,这样您的应用程序就可以使用所有的屏幕尺寸。 – Brydenr

+0

*“我需要将它从本地转换为屏幕。”*为什么? –

+0

我所记录的点是鼠标点击,我需要能够重播它们 – user3597322

一个the localToScreen methods可用于在Node变换坐标屏幕坐标的坐标系:

Node node = ... 
Point2D screenCoordiantes = node.localToScreen(localX, localY); 

请注意,这只是作品,如果节点添加到场景和它所示一个窗口。

+0

这似乎导致NullPointerException – user3597322

+1

@ user3597322您需要首先将此节点添加到场景并在窗口中显示场景。 – f*