2017-01-18 41 views
1

我需要一些關於和Selection之間javafx.scene.control.TreeTableView之間關係的說明。JavaFX/TreeTableView:選擇和焦點之間的關係

在我的代碼我已經定義:

ttvMainTree.getSelectionModel().setSelectionMode(SelectionMode.SINGLE); 

假設1:我是假設,即關注項目總是與左鍵單擊最後一個項目。另外我假設左鍵點擊總是會移動選擇。因此,在SelectionMode.SINGLE關注的項目和選定的項目總是相同的。

在90%的情況下,這似乎是正確的。一些隨機的左clickes我的代碼產生這樣的畫面後,無論如何:

enter image description here

請確認:

  • 與藍色背景的項目是所選擇的項目
  • 與藍色的項目邊境IST關注項目

這裏關注項目可以用左鍵單擊可以改變,所選的項目似乎不是我受左鍵點擊影響。我的道歉不提供SSCCE。目前我不知道如何縮短我的代碼並重現此行爲。

因此一個一般性的問題:

  • 什麼是錯的假設1?

回答

1

在我的愚見,我不認爲這是在兩個活動的差異,這是相當一個關係如你所說,當你選擇一個Node,這一個請求的焦點。 焦點可以用「focusTraversable」進行控制:

focusTraversable:指定該節點是否應該是焦點遍歷循環的一部分。當此屬性爲true時,可以使用常規焦點遍歷鍵將焦點移至此節點,並從此節點移動焦點。

對於你的情況,我認爲也許是因爲你選擇了一個TreeTableView既小孩和父母Child 2

0

找到我的應用程序的奇怪行爲的原因: 選擇偵聽器導致數據模型的更新。基本上,帶有子元素的列表被刪除,並再次使用相同的數據填充。這導致了選擇模型的混亂。