Java fxml-隐藏控件仍在工具栏中保留位置
我正在开发这个记事本,它在FXML中实现了一个拼写检查器。我想在拼写检查器在后台工作时使用加载程序,所以我使用了Java fxml-隐藏控件仍在工具栏中保留位置,java,javafx,fxml,Java,Javafx,Fxml,我正在开发这个记事本,它在FXML中实现了一个拼写检查器。我想在拼写检查器在后台工作时使用加载程序,所以我使用了ProgressIndicator。问题是,当我隐藏ProgressIndicator时,它仍然在原来的位置保留了一点空间 我想要的是隐藏控件以及它所拥有的空间,就像它不存在一样 这是我的FXML代码: <ToolBar onKeyTyped="#onTextChanged" prefHeight="40.0" prefWidth="200.0" BorderPane.alig
ProgressIndicator
。问题是,当我隐藏ProgressIndicator
时,它仍然在原来的位置保留了一点空间
我想要的是隐藏控件以及它所拥有的空间,就像它不存在一样
这是我的FXML代码:
<ToolBar onKeyTyped="#onTextChanged" prefHeight="40.0" prefWidth="200.0" BorderPane.alignment="CENTER">
<items>
<Button fx:id="btnCorrect" mnemonicParsing="false" onAction="#onCorrectionClicked" >
<graphic>
<ImageView fx:id="imgButton" fitHeight="23.0" fitWidth="23.0" pickOnBounds="true" preserveRatio="true">
<image>
<Image url="@../../img/book.png" />
</image>
</ImageView>
</graphic>
</Button>
<ProgressIndicator prefHeight="23.0" prefWidth="23.0" />
<Separator orientation="VERTICAL" prefHeight="0.0" prefWidth="3.0" />
...
</items>
</ToolBar>
...
如果通过属性分离节点,则可以释放布局空间-这将强制父节点在没有节点的情况下重新绘制,因为它不再受其控制。别忘了用相同的属性重新附加它,否则它将不再显示如果通过属性分离节点,则可以释放布局空间-这将强制父节点在没有节点的情况下重新绘制,因为它不再受其控制。别忘了用相同的属性重新附加它,否则它将不会再显示而不是写入
progressIndicator.setVisible(false)
写
您可以通过编写toolbar.getItems().add(1,progressIndicator)重新添加它编码>而不是写
progressIndicator.setVisible(false)
写
您可以通过编写toolbar.getItems().add(1,progressIndicator)重新添加它代码>在删除列表之前,无需检查列表是否包含元素,至少列表是否满足的契约。这取决于您的编码List.remove
如果读取两次,可能会在第二次抛出异常。但只有当List.remove
以错误的方式实现时,才会发生这种情况<代码>列表。删除
javadoc第二句话:“如果此列表不包含元素,它将保持不变。”好的。。知道了。。我想它可能会出错,因为元素不存在。我将编辑我的答案。谢谢你把它清理掉。:)在删除元素之前,无需检查列表是否包含元素,至少列表是否满足的契约。这取决于您的编码List.remove
如果读取两次,可能会在第二次抛出异常。但只有当List.remove
以错误的方式实现时,才会发生这种情况<代码>列表。删除
javadoc第二句话:“如果此列表不包含元素,它将保持不变。”好的。。知道了。。我想它可能会出错,因为元素不存在。我将编辑我的答案。谢谢你把它清理掉。:)