如何獲取場景中節點的實際位置。絕對位置,無論任何容器/變換。獲取JavaFX中節點的全局座標
例如,我想翻譯某個節點a
,以便它會臨時重疊另一個節點b
。所以我想把他的translateX
屬性設置爲b.globalX-a.globalX
。
文檔說:
定義被添加到佈局的目的,這個節點 的 變換座標 翻譯的X座標。集裝箱 或組執行佈局將設置 此變量相對於 layoutBounds.minX爲了位於 節點在所需的佈局 位置。
例如,如果孩子應該有finalX的 最終位置:
child.layoutX = finalX - child.layoutBounds.minX;
也就是說,任何節點的最後的座標應該是
finalX = node.layoutX + node.layoutBounds.minX
但是運行下面的代碼:
var rect;
Stage {
title: "Application title"
width: 250
height:250
scene: Scene {
content: [
Stack{content:[rect = Rectangle { width:10 height:10}] layoutX:10}
]
}
}
println("finalX = {rect.layoutX+rect.layoutBounds.minX}");
給我finalX = 0.0
而不是finalX = 10.0
作爲文檔看似狀態。
是否有一個明確的方法來獲得JavaFX中的絕對最終定位座標?
只是想知道,什麼格式是上面的代碼嗎?這不是Java,也許是JSON? – 2015-08-23 14:31:16
JavaFX是Sun/Oracle的一種新編程語言。 – 2015-08-23 18:44:40
格式,我知道它是JavaFX,但它不是Java代碼。 – 2015-08-23 19:15:59