我如何实现均匀分割的UI,如以下示例中的播放器框所示:
我会将它建模为具有2个大小均匀的VBox的HBox,但我不能让它们在HBox中拉伸到相同的大小。
答案 0 :(得分:0)
为您的HBox提供PrefWidth值。然后,您可以将VBoxes的宽度绑定到该宽度的一半
hBox.setPrefWidth(400);
vbox.setPrefWidth(hbox.getPrefWidth()/2);
您可能想看看JavaFX Scene Builder。在那里你可以设计你的布局。 刚看到使用SplitPane也可以。在那里你可以将DividerPosition设置为0.5(如此居中)。然后你就可以把各种Panes都放在里面了。
答案 1 :(得分:0)
将两个VBox
放在TilePane
而不是HBox
。
答案 2 :(得分:0)
将VBox拉伸为两个单独的HBox的一半对我来说是有效的,并且为两个VBox设置了HBox.hgrow="ALWAYS"
属性:
<HBox>
<VBox HBox.hgrow="ALWAYS">
...
</VBox>
<VBox HBox.hgrow="ALWAYS">
...
</VBox>
</HBox>