如何在javafx中的窗格上居中放置标签
问题描述:
我想将结果设置为窗格的中心。如何在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但在这种情况下,我需要使用一个普通的窗格。
答
Pane
不支持居中儿童。因此必须手动完成,即layoutX
和layoutY
位置必须“手动”计算。
您可以通过绑定实现这一目标:
results.layoutXProperty().bind(pane.widthProperty().subtract(results.widthProperty()).divide(2));
// procede accordingly with layoutY/height
IDK如何工作的,但它确实!非常感谢 –