2012-03-19 53 views
0

我已經使用Tree來顯示所有的數據。我已經使用不同的IssueAmount擴展了具有相同LoanId的數據。我的輸出如圖所示。 在圖像中包含S.No. 3是parentItem,它下面的黃色是它的子項。 我可以訪問父項目。假設我要訪問的第三行的第三列,我可以使用如下代碼接取它:訪問SWT中樹的子項Eclipse

TreeItem Item[] = tree.getItems(); 
System.out.println("The Item is"+Item[2].getText(2)); 

同樣地,我想有機會獲得分項(以黃色突出顯示的那些)。我怎樣才能訪問子項目。謝謝.. enter image description here

回答

2

使用TreeItemgetItems()。請注意,僅當父節點至少擴展一次時,子項纔可用。

TreeItem items[] = tree.getItems(); 
//Print all items recursively 
printItems(items); 
... 
void printItems(TreeItem items[]) { 
    for (TreeItem i: items) { 
     System.out.println(i.getText(2)); 
     //Check if expanded 
     if (!i.getExpanded()) 
      continue; 
     printItems(i.getItems()); 
    } 
} 
+0

我沒有得到它可以請你解釋它... – Kiran 2012-03-19 08:20:48

+0

@Kiran增加了一些示例代碼。希望能幫助到你。 – 2012-03-19 08:31:02

+0

謝謝你的代碼,但我希望子項目只有在父項展開的情況下才能打印,上面的代碼打印父項的所有子項目,即使它們沒有展開。 – Kiran 2012-03-19 08:54:48