En este artículo, aprenderemos sobre el método ExpandAllChildren() asociado con la clase wx.TreeCtrl de wxPython. El método ExpandAllChildren() se usa para expandir todos los Nodes que se encuentran debajo de un elemento en particular que se pasa como parámetro en el método. Básicamente, este método expande el elemento dado y todos sus elementos secundarios de forma recursiva.
Esta función toma el elemento del Node del árbol como parámetro a quien queremos expandir recursivamente.
Sintaxis: wx.TreeCtrl.ExpandAllChildren(self,i tem)
Parámetros:
Parámetro | Escribe | Descripción |
artículo | wx.TreeItemId | Elemento con el que queremos asociar editlabel. |
Ejemplo de código:
Python
import wx class MyTree(wx.TreeCtrl): def __init__(self, parent, id, pos, size, style): wx.TreeCtrl.__init__(self, parent, id, pos, size, style) class TreePanel(wx.Panel): def __init__(self, parent): wx.Panel.__init__(self, parent) # create tree control in window self.tree = MyTree(self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TR_HAS_BUTTONS) # CREATE TREE ROOT self.root = self.tree.AddRoot('root') self.tree.SetPyData(self.root, ('key', 'value')) # add item to root item = self.tree.AppendItem(self.root, "Item") item2 = self.tree.AppendItem(self.root, "Item") item3 = self.tree.AppendItem(item, "SubItem") item4 = self.tree.AppendItem(item, "SubItem") item5 = self.tree.AppendItem(item2, "SubItem") item6 = self.tree.AppendItem(item, "SubItem") # expand root node self.tree.Expand(self.root) # expand all nodes of the tree self.tree.ExpandAllChildren(item) sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(self.tree, 0, wx.EXPAND) self.SetSizer(sizer) class MainFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self, parent = None, title ='TreeCtrl Demo') panel = TreePanel(self) self.Show() if __name__ == '__main__': app = wx.App(redirect = False) frame = MainFrame() app.MainLoop()
Producción:
Publicación traducida automáticamente
Artículo escrito por RahulSabharwal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA