Java FX - 如何创建没有内容的标签以在布局管理器中保留位置?

标签 java javafx

有没有办法创建具有某种类型的不可见内容的标签,以保留其在布局(例如 HBox 或 VBox)中的“空间”,以防止布局管理器参与某种类型的调整大小,这样如果我必须将某个Label的内容设置为空,布局管理器不会调整容器的大小?

谢谢!

最佳答案

所有布局都将布局 invisible节点就好像它是可见的一样。您可以将不可见标签用作“支柱”,方法是使其不可见并将其与可见节点一起放置在 StackPane 中:

Label valueLabel = new Label("This may become empty");

Label strut = new Label(valueLabel.getText());
strut.setVisible(false);

StackPane labelPane = new StackPane(strut, valueLabel);

hBox.getChildren().add(labelPane);

另一种选择是简单地使您的值 Label 不可见,而不是使其文本为空,但我意识到在某些情况下这可能是不可能的,例如如果 Label 的文本属性已绑定(bind)。

关于Java FX - 如何创建没有内容的标签以在布局管理器中保留位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43001379/

相关文章:

JavaFX CSS 行不会相交

java - 需要帮助让这个简单的华氏度到摄氏度应用程序在 Java 中工作

Java - 异常的 GridLayout 行为

java - 无法从 java 程序运行批处理文件

java - 如何为特定控件编写 CSS 代码

java - 将带有 FloatProperty 的 ObjectProperty 绑定(bind)到其他属性

javafx - 如何确定JavaFX应用程序所需的FXML文件,CSS文件,图像和其他资源的正确路径?

java - 区 block 链表示

java - 无法更新Android Studio : java. exe被修改?

MediaPlayer.seek() 和 MediaPlayer.getCurrentTime() 的 JavaFX 问题;