JavaFX - setVisible 隐藏元素,但不重新排列相邻节点
在JavaFX中,如果我有一个场景有2个元素,每个元素都有多个元素。
如果将顶部设置为不可见,为什么底部不会向上移动顶部所在的场景?VBox
VBox
Label
VBox
VBox
VBox
这是看不见的,但我希望其他物体移动到它的位置。VBox
我正在使用FXML加载我的控件。
在JavaFX中,如果我有一个场景有2个元素,每个元素都有多个元素。
如果将顶部设置为不可见,为什么底部不会向上移动顶部所在的场景?VBox
VBox
Label
VBox
VBox
VBox
这是看不见的,但我希望其他物体移动到它的位置。VBox
我正在使用FXML加载我的控件。
Node.setVisible(boolean)
只需切换 .Node
若要从其父布局计算中排除 a,您还必须通过调用 Node.setManaged(false)
来设置其托管状态。Node
如果希望托管状态与可见性一起自动更新,则可以使用绑定,如@jewelsea指出的那样:node.managedProperty().bind(node.visibleProperty());
由于它是不可见的,因此不会移动到顶部。您必须使用如下内容将其删除:
// remove
vbox.getChildren().remove(...)
一旦你删除了你想要不可见的元素,那么另一个元素应该移动到顶部。