簡體   English   中英

JavaFX 取消選擇 TreeView 上的項目

[英]JavaFX Unselect item on TreeView

我有一個 TreeView,當我選擇一個項目時,會打開一個帶有相應信息的選項卡。 但是當我關閉選項卡並嘗試打開它時,它不會出現,因為該項目已被選中。 我需要先選擇另一個,然后再次單擊它。

我用這個。

fileView.getSelectionModel().selectedItemProperty().addListener((observable, oldValue, newValue) -> {
    if (newValue == null)
        return;
    System.out.println("Selected File : " + newValue.getValue().getAbsolutePath());
    if (newValue.getValue().isFile()) {
        ...
    }
});

我看到了 2 個解決問題的方法。

1)從項目中刪除選擇標簽

2)更換監聽器

但我沒有成功。 我會很高興您的解決方案。 請提供一個代碼片段,例如

Ps請不要降低我的聲譽,我對我的問題很感興趣

您可以在打開選項卡后清除選擇:

fileView.getSelectionModel().selectedItemProperty().addListener((observable, oldValue, newValue) -> {
    if (newValue != null) {
        System.out.println("Selected File : " + newValue.getValue().getAbsolutePath());
        if (newValue.getValue().isFile()) {
            // Open a tab here...

            /* Clear selection */
            Platform.runLater(() -> fileView.getSelectionModel().clearSelection());
        }
    }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM