[英]Clear Selection when TableView loses focus
當我的表格視圖失去焦點時,我正在嘗試清除選擇。 現在,當我單擊添加按鈕時,將添加新的EMPTY行,並對其進行設置,以便第一列處於編輯狀態。 如果我單擊該單元格之外的任何位置,則什么也不會發生。 該單元保持選中狀態,這並不是我真正想要的。 我希望單元格不集中時,單元格不會被選中。
我在自定義條目上使用javafx.scene.control.TableView
。 我嘗試在每列上設置setOnEditCancel
但是它不起作用。
expressionTableColumn.setOnEditCancel(event -> {
final ObservableList<TableEntry> items = tableView.getItems();
if (items.contains(EMPTY_ENTRY)) {
items.remove(EMPTY_ENTRY);
}
tableView.getSelectionModel().clearSelection();
}
);
我寧願在失去焦點的桌子上使用clearSelection。 有任何想法嗎?
將ChangeListener
添加到Node
的focused
屬性 ( TableView
繼承)。 然后,當所述屬性的新值為false
,從TableView
的selectionModel
屬性中檢索SelectionModel
並調用clearSelection()
。
tableView.focusedProperty().addListener((obs, oldVal, newVal) -> {
if (!newVal) {
tableView.getSelectionModel().clearSelection();
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.