背景:
假設我有單個表的多個片段在視圖中,每個片段都有一個rowExpander。tornadofx EventBus使用tableview對象展開表格行
預期行爲:
如果在一個表格片段中展開一行,其他片段的相同索引行應該展開。同爲崩潰
我的進展情況:
樣品片段:
tableview(dataset) {
column("First Name", Person::firstNameProperty)
column("Last Name", Person::lastNameProperty)
rowExpander(true) {
selectedData.item?.apply {
fire(ExpandDataEvent(dataset.indexOf(this)))
}
column("Mobile Nos.", Person::mobileNumProperty)
column("Email Ids", Person::emailIdProperty)
}
bindSelected(selectedData)
subscribe<ExpandDataEvent> { event ->
selectionModel.select(event.index)
}
}
事件類:
class ExpandDataEvent(val index: Int) : FXEvent()
我從「訂閱」的是,當一個事件被觸發它被稱爲明白什麼(目前,只要用戶通過雙擊/單擊加號來擴展行,我就會觸發該事件);並且由於訂閱被放置在tableview中,所以它被調用來存在所有表格片段(這是我想要的)。但是在訂閱方法中,我正在做一個selectionModel.select(event.index),它只選擇相應的索引行。我想擴大行(最好通過使用selectionModel)
問題2:
是否可以刪除加號列?對於rowExpand,如果我將expandOnDoubleClick設置爲true,我不希望我的tableview中的加號列。
啊很容易!我正在嘗試同樣的事情,但發送擴展器對象作爲火災事件中的參數;並始終獲得相同的實例。謝謝:) – mercy123
偉大的:)我會確保在指南中提及這種使用模式。 –