使用 Java FX 2.2。场景的水平宽度是固定的,但在编译时是未知的。我想在水平行中放置 2 个或更多按钮,完全填满场景中的水平空间,并且每个按钮的宽度完全相同。按钮的数量随程序状态动态变化。什么程序片段可以完成此任务?
最佳答案
带有属性绑定(bind)的更简洁的解决方案:
HBox buttonLayout = new HBox();
buttonLayout.getChildren().add(button1);
buttonLayout.getChildren().add(button2);
int btnCount = buttonLayout.getChildren().size();
button1.prefWidthProperty().bind(buttonLayout.widthProperty().divide(btnCount));
button2.prefWidthProperty().bind(buttonLayout.widthProperty().divide(btnCount));
关于JavaFX 2 按钮大小填充宽度和每个相同的宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12830402/