2016-04-26 291 views
1

我想将结果设置为窗格的中心。如何在javafx中的窗格上居中放置标签

Label results = new Label("You win"); 
Pane pane = new Pane(); 
pane.getChildren().add(results); 

我已经尝试了下面的两行代码,但都不起作用。

results.setAlignment(Pos.CENTER); 
results.setContentDisplay(ContentDisplay.CENTER); 

顺便说一句,我知道如何得到这个中心与StackPane和GridPane但在这种情况下,我需要使用一个普通的窗格。

回答

1

Pane不支持居中儿童。因此必须手动完成,即layoutXlayoutY位置必须“手动”计算。

您可以通过绑定实现这一目标:

results.layoutXProperty().bind(pane.widthProperty().subtract(results.widthProperty()).divide(2)); 
// procede accordingly with layoutY/height 
+0

IDK如何工作的,但它确实!非常感谢 –