【发布时间】:2014-02-24 16:43:56
【问题描述】:
我有一个使用 JavaFX 的应用程序。它包含一个 ListView(它使用一个 ObservableList)。我添加了一个 ChangeListener 使用
list.getSelectionModel().selectedItemProperty().addListener(new ChangeListener...
而且效果很好。每次我选择其他项目时,都会调用侦听器。
但是当我从 ObservableList 中删除一个元素时也会调用它。 移除元素后,会自动选择列表中的另一个元素并调用监听器。
如何防止这种行为?
谢谢!
【问题讨论】:
-
您必须移除监听器,删除项目,然后重新添加监听器。在哪里执行此操作取决于您的代码,但可能在哪里删除项目或使用 getRemoved() 在列表更改侦听器中。
标签: java javafx observablelist