我对 Java 还很陌生,正在努力让我的注意力集中在 ObservableList 上。
我有一个 WebHistory.Entry 类型的可观察列表(来自 WebView/WebEngine)。我想要一个 String 类型的可观察列表,它只包含原始 ObservableList 中每个项目的 URL。 (WebHistory.Entry.getUrl())。这样我就可以将它传递给组合框(字符串类型)。几乎就像另一个列表顶部的包装器。
是否有任何简单的方法来创建一个可观察列表,它比像这样迭代列表更优雅一点:
for (Entry e : webHistory.getEntries()) {
//...add to a list here...
}
关于如何解决这个问题有什么建议吗?
谢谢!
最佳答案
尝试
第一
override *YourClass* method `toString()` as
public String toString(){
return this.URLFIELD;
}
之后
ObservableList<YourClass> list;
list=FXCollections.observableArrayList(YourClassInstance.getEntries()); //or simile
cmb.setItems(list);
在本例中,组合框填充为“对于所有条目都获取 YourClassInstance.toString()” (getURL()
)
这是一个 JavaFX 示例
关于java - 可观察列表转换/转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22417452/