2016-11-04 28 views
0

我已經在wxpython中使用CT.CustomTreeCtrl創建了一棵樹。現在我想閱讀樹中的所有孩子。我的樹結構就像a-> b-> c,其中a是根節點,b是c的子節點和c的父節點。如何從wxpython中的CT.CustomTreeCtrl中獲取所有節點

當我使用「GetFirstChild(根)」我得到的子節點「B」。但我想閱讀c的文本。任何導致這種情況的原因是

回答

0

我在過去使用過類似於此的方法。這遍歷父節點中的每個項目並遞歸地產生每個有子項的項目。

def get_all_nodes(self, parent_node): 
    for child in parent_node.GetChildren(): 
     if self.ItemHasChildren(child): 
      yield child 
      for grandchild in self.get_all_nodes(child): 
       yield grandchild 

編輯: 獲得每個項目文本使用的方法 'GetItemText'

def get_all_nodes(self, parent_node): 
    for child in parent_node.GetChildren(): 
     if self.ItemHasChildren(child): 
      yield self.GetItemText(child) 
      for grandchild in self.get_all_nodes(child): 
       yield self.GetItemText(grandchild) 
+0

謝謝,但它返回的所有兒童的發電機對象。我想得到每個孩子的名字,並比較 – Ashu

+0

做了更新的答案爲你工作? – user2682863

+0

它仍然返回生成器對象。我不知道如何從中得到它的名字。 – Ashu

相關問題