您如何使用 TornadoFX DataGrids 处理选择?

问题描述

正如标题所暗示的,我正在寻找处理 TornadoFX DataGrids 中选择的最佳方法。我已经看到并尝试了以下三个选项:

首先,我试过这个:

private var currentSelection = Foo()

datagrid(data) {
    ...
    onUserSelect {
        currentSelection = selectedItem!!
        println("Selected")
    }
}

在 DataGrid 中选择不同的单元格似乎没有任何效果,因为没有打印出任何内容,但这就是处理不同 TableView 组件的方式 here 所以我出于我的目的尝试了它,但没有成功。

我看到的另一种方法 here,导致我尝试将此值绑定到我的 currentSelection 属性,如下所示:

private var currentSelection: Foo by property()

fun dataproperty() = getProperty(Bar::currentSelection)

...

datagrid(data) {
    ...
    
    bindSelected(currentSelection)
}

然而,这有两个问题。 dataproperty() 函数显然需要是抽象的。此外,currentSelection 显然不是正确的类型。

一种有效的方法是:

selectionModel.selectedItemproperty().onChange {
    currentSelection = selectedItem!!
}

我不知道这是否是普遍接受的方法

人们通常应该如何处理这种情况?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)