![](/img/trans.png)
[英]JavaFX Hbox of buttons won't fill space of bottom container in BorderPane
[英]JavaFX BorderPane set multiple buttons to Bottom?
是否可以将多个Buttons
设置为Bottom
(左、中、右)?
这是我尝试过的:
private Pane createPane() {
BorderPane rootPane = new BorderPane();
rootPane.setTop(createMenueBar());
rootPane.setCenter(createTableView(model.getIssues()));
rootPane.setBottom(createDeleteIssueButton());
rootPane.setBottom(createCloseIssueButton());
rootPane.setBottom(createCreateNewIssueButton());
BorderPane.setAlignment(deleteIssueButton, Pos.BOTTOM_LEFT);
BorderPane.setAlignment(closeIssueButton, Pos.BOTTOM_CENTER);
BorderPane.setAlignment(createIssueButton, Pos.BOTTOM_RIGHT);
return rootPane;
}
结果:
如您所见,它仅显示最后添加的Button
。 使用 JavaFX/BorderPane 完成此任务的最佳方法是什么? 我对此很陌生,所以如果您需要更多信息,请告诉我!
将多个按钮收集到一个布局管理器中。 将布局管理器 object 放在BorderPane
的底部 position 中。
例如,您可以选择FlowPane
作为您的布局管理器。
FlowPane buttons = new FlowPane() ;
buttons.getChildren().addAll( deleteIssueButton , closeIssueButton , createIssueButton ) ;
BorderPane
仅在底部插槽中放置一个小部件。 您希望您的按钮容器成为那个小部件。
BorderPane rootPane = new BorderPane();
rootPane.setBottom( buttons ) ;
您对Pos.BOTTOM_LEFT
等的使用决定了小部件放置在底部插槽中的位置。 BOTTOM_LEFT
中的BOTTOM
表示插槽内给定空间的底部插槽,而不是BorderPane
的底部。 这里涉及两个不同的底部。
BorderPane.setAlignment( buttons , Pos.CENTER ) ;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.