在JavaFX中删除边框面板中的特定节点

5

我有一个边框面板,其顶部、左侧和右侧都有组件。我想通过使用边框面板的id来在鼠标事件中删除其右侧的组件。我该如何做?

1个回答

8

只需做即可

borderPane.setRight(null);

我是唯一一个在这里遇到ConcurrentModificationException的人吗?我们不需要使用Platform.runLater吗?button.setOnAction(e -> Platform.runLater(() -> borderPane.setRight(null))); - virgo47
borderPane.setRight(null)并不会真正从BorderPane中移除子节点;您仍然可以在borderPane.getChildren()中看到此子节点。在大多数情况下,这可能是可以接受的,但如果您稍后想要再次将borderPane.setRight()设置为先前的子节点,则会遇到异常。 - Lucas
1
@LucasMorgan 它会将其移除。听起来你的代码还有其他问题。 - James_D
你说得对。我还没有想清楚,但是我肯定是从一个糟糕的测试场景中错误地假设了一些东西。谢谢! - Lucas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接