0

尝试对齐由相同方法创建的 2 个不同 HBox 的子项(标签):

public HBox addHBox() {
    HBox hbox = new HBox(10);
    hbox.setLayoutX(10);
    hbox.setPrefWidth(Pane.getWidth());
    hbox.setPrefHeight(Pane.getHeight());
    return hbox;
}

LayoutY 是不同的,并且在每个 HBox 创建后都发生了变化。因此,我想完成添加的 HBox1 的 child[i] 将位于 HBox2 的 child[i] 的正下方。

注意:孩子的大小应该无关紧要! (这是困扰我的问题)

我试过了

hbox2.setMinWidth(hbox1.getMinWidth());

hbox2.setPrefWidth(hbox1.getPrefWidth());

hbox2.setMaxWidth(hbox1.getMaxWidth());

似乎没有任何帮助。有任何想法吗?PS我知道我可以使用gridPane,但不是在这种情况下

4

2 回答 2

0

好的,经过额外的研究和社区的帮助:

1.一定要用gridPane。

2.或者更改HBox2中每个标签的layoutX以适应HBox1中标签的layoutX。

于 2017-01-04T20:55:08.360 回答
0

HBox只对Nodes另一侧进行水平分类,在您的情况下,我想您使用Text控件来显示您的字符串,我并不是说这是一个坏主意,但我认为您( ) 的宽度取决于字符串的长度给出了不可预测和无序的显示,所以为什么不使用 a ,这个控件的优点是你可以定义背景的宽度什么会给你的字符串一个限制并允许有序显示!NodeTextLabel

于 2017-01-04T20:10:47.673 回答