VBox的宽度仍为0,即使它在场景中大于0

时间:2016-05-04 03:51:48

标签: java javafx

我将一些子节点添加到VBox,例如按钮和文本。因此,VBox的宽度应大于0,因为它在场景中显示。

但是当我调用宽度值时,它会输出0。

示例:

vbox.getWidth();      // prints 0
vbox.widthProperty(); // prints 0

如何获得vbox的正确宽度?

2 个答案:

答案 0 :(得分:1)

scene出现之前,VBox或任何Node的宽度和高度未初始化。这就是为什么你得到0的原因。在scene显示stage之后尝试获取尺寸。这样它将显示正确的大小。

答案 1 :(得分:0)

尝试一下:

vbox.widthProperty().addListener(e -> System.out.println(vbox.getWidth()));