我想表示我在树中的数据并使用TreeTableView显示它。显示的项目包含在案例类中:
case class Foo(name: StringProperty, desc:StringPropert) {
def this(_name: String, _desc: String) = this(StringProperty(_name), StringProperty(_dest))
}
通过(基本上)异步完成填充树(调用需要时间的外部程序):
val runner = Future {
// run command
}
runner onComplete {
case Success(ret) => // parse ret and update TreeTableView somehow
...
}
由于这是异步完成的,我开始使用树的空节点:
val ViewPkgs = new TreeItem[Foo](new Foo("root", "desc"))
...
val ViewTable = new TreeTableView[Foo](ViewPkgs) { columns ++= ... }
如何从上面的异步调用更新软件包列表?
我尝试的是创建
val ViewBuf = ObservableBuffer[Foo]()
ViewPkgs.children = ObservableBuffer( ViewBuf.map { p => new TreeItem[Foo](p) } )
但这并没有帮助。
感谢您的任何建议。