java - ListProperty<T> 与 ObjectProperty<ObservableList<T>>

标签 java javafx

我注意到 ListView 中的 itemsProperty类型为 ObjectProperty<ObservableList<T>> ,但我会期待 ListProperty<T> .
现在我想知道:我应该什么时候使用 ObjectProperty<ObservableList<T>> , 当 ListProperty<T> ?

最佳答案

答案可以在 ObjectProperty 的 JavaFX 文档中找到。 ,特别是这一行:

For specialized implementations for ObservableList, ObservableSet and ObservableMap that also report changes inside the collections, see ListProperty, SetProperty and MapProperty, respectively.


所以使用 ObjectProperty<ObservableList<T>>如果 ObservableList 将报告本身会发生变化,但如果有成员则不会发生变化 那个ObservableList被改变。
因此,要回答您的问题,您可以使用 ObjectProperty<ObservableList<T>>如果ObservableList当你只需要被举报已更改(即:添加或删除的项目)。您应该使用 ListProperty<T>如果您还需要跟踪对该 ObservableList 中的实际项目所做的更改.

关于java - ListProperty<T> 与 ObjectProperty<ObservableList<T>>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67448674/

相关文章:

java游戏如何构造定时效果/定距效果?

java - Base64类型中的方法decodeBase64(byte[])不适用于参数(String)

java - 访问Heroku端点-Spring Boot App 503服务不可用

java - 标签在 Vaadin 的 GridLayout 上消失

java - 带有 TextField 的 GridPane 9x9 用于数独

java - 如何从 JavaFX 中的另一个 Controller 类访问 UI 元素?

java - 将语言从英语更改为荷兰语

Java FX 和数据库连接

java - Maven:如何将父jar下载到自定义位置?

java - “找不到符号”或“无法解析符号”错误是什么意思?