由JavaFX ListChangeListener.Change困惑

时间:2012-11-25 18:52:56

标签: javafx-2

我对JavaFX中ListChangeListener.Change中的术语感到困惑。我有一个可观察的列表,并在列表中调用set(index,newValue)

在得到的更改中,我观察到以下更改属性:

wasRemoved() == true
wasReplaced() == false
wasUpdated() == false

值得庆幸的是,getAddedSublist()包含新值,但我希望wasReplaced或wasUpdated为true。

这两个领域会有什么变化?

1 个答案:

答案 0 :(得分:1)

我自己的愚蠢错误。我复制了Javadocs中的示例,并添加了其他几个块,例如

if(change.wasAdded()) {
  //doAdd
} else if (change.wasRemoved()) {
  //doRemove
} else if (change.wasReplaced()) {
  //doReplace
}

doReplace()永远不会被调用,因为它是一个别的if if而不是if。感谢@ftkg给我的建议。