获取节点在JavaFX中的真实位置
在JavaFX中获取节点绝对位置的最佳方法是什么?
假设我们在窗格(Hbox,Stackpane或任何其他窗格)中有一个节点,并且它本身可能有一个父节点。
我想获取该节点的绝对位置,并在另一个窗格中使用它。
回答:
这取决于您所说的“绝对”的含义。节点有一个坐标系,父节点有一个坐标系,父节点有一个坐标系,依此类推,最终有一个坐标系Scene
和一个屏幕坐标系(可能是物理显示设备的集合)。
您可能想要相对于的坐标Scene
,在这种情况下,您可以
Bounds boundsInScene = node.localToScene(node.getBoundsInLocal());
或相对于屏幕的坐标:
Bounds boundsInScreen = node.localToScreen(node.getBoundsInLocal());
在任一种情况下,所得Bounds
物体具有getMinX()
,getMinY()
,getMaxX()
,getMaxY()
,getWidth()
和getHeight()
方法。
以上是 获取节点在JavaFX中的真实位置 的全部内容, 来源链接: utcz.com/qa/409202.html