我有一個JFace的樹,需要存儲得到擴大前的膨脹是在一個變量完成每個父元素,因爲我需要在我的標籤提供的方法來擴大元素的引用,這似乎是直接調用點擊擴展箭頭後。JFace Tree Viewer:節點擴展的監聽器?
我知道ITreeViewerListener接口可以用來獲取元素後已完全展開,但不能同時它(點擊要素展開箭頭後直接=)擴大。這樣,當我嘗試在Label Provider中使用對擴展元素的引用時,我得到一個空指針異常,因爲在單擊元素擴展箭頭後直接調用標籤提供程序,並且不會等待元素完全展開。
我嘗試使用ISelectionChangedListener。不幸的是,單擊它的擴展箭頭時該元素沒有被選中,所以ISelectionChangedListener沒有被觸發。
經過一番研究,我發現有一個爲揮杆TreeWillExpandListener。這似乎正是我所需要的,但我無法使它與我的JFace樹查看器一起工作。有什麼方法可以使用JFace完成這個任務嗎?
你真的應該設計您的內容提供者返回,使他們能夠提供父當標籤提供商需要它們的對象。 –
有多個父對象和子對象,而同一個對象可以被多個父對象包含。即: +親本1: -child a -child b/ +親本2: -child a; 在這種情況下,孩子a被兩個父母包含。我有第二列,我想要顯示特定父元素中的每個子元素的計數,因爲同一個對象可以多次添加到父級。爲了讓LabelProvider顯示一個子元素的正確數量,我需要告訴它要檢查哪個父元素。我認爲這隻能通過用戶選擇完成。 – Madrox