2013-02-20 215 views
4

我使用StackPanel作爲我的數字,面板等的容器。我發現,座標X,Y(0,0)放置在我面板的中心。JavaFX-StackPane X,Y座標

是否有可能將其移動到左上方od Pane? 從中心計算所有維度要困難得多。

回答

11

您可以設置節點的佈局添加到StackPane到Stackpane內的位置使用StackPane.setAlignment(node, position)方法:

Label topLeftLabel = new Label("Top Left"); 
StackPane stack = new StackPane(); 
stack.getChildren().add(topLeftLabel); 

StackPane.setAlignment(topLeftLabel, Pos.TOP_LEFT); 

即使這是可能的,從你怎麼是你簡要說明試圖使用StackPane,這聽起來像你最好使用常規的PaneGroupAnchorPane作爲你想要實現的絕對定位。

也可能使用可視化工具如SceneBuilder進行研究。即使您最終沒有使用它輸出的FXML,SceneBuilder也應該讓您更好地瞭解JavaFX佈局機制的工作原理。 SceneBuilder使用AnchorPane作爲其默認佈局窗格,用於爲元素提供絕對定位(這似乎是您想要實現的)。