Tema: TreeItemData
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/01/2010, 10:30
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: TreeItemData

Puedes guardar los TreeItemId en una lista. Para saber cual fue, ejemplo:
Código Python:
Ver original
  1. #coding: utf-8
  2. import wx
  3.  
  4. class TestFrame(wx.Frame):
  5.     def __init__(self):
  6.         wx.Frame.__init__(self, None, title="Tree", size=(400,500))
  7.  
  8.         # Creamos el tree
  9.         self.tree = wx.TreeCtrl(self)
  10.  
  11.         # Añadimos una raiz
  12.         self.root = self.tree.AddRoot("Raiz")
  13.        
  14.         # Añadimos ramas (o nodos) a nuestra raiz
  15.         self.branches = [
  16.                     ["Rama1",
  17.                         ["SubRama1EnRama1", "SubRama2EnRama1"]],
  18.                     ["Rama2",
  19.                         ["SubRama1EnRama2", "SubRama2EnRama2"]]
  20.                    ]
  21.         self.IdNodes = [self.root]
  22.         self.AddTreeNodes(self.root, self.branches) #Metodo de clase
  23.  
  24.         # Expandimos el primer nivel
  25.         self.tree.Expand(self.root)
  26.  
  27.         self.tree.Bind(wx.EVT_TREE_ITEM_ACTIVATED, self.OnDoubleClick)
  28.         #self.tree.Bind(wx.EVT_TREE_KEY_DOWN, self.OnEnter)
  29.  
  30.     def OnDoubleClick(self, event):
  31.         print self.tree.GetItemText(event.GetItem()),
  32.         print self.IdNodes.index(event.GetItem())
  33.  
  34.     def AddTreeNodes(self, root, items):
  35.         for item in items:
  36.             if type(item) == str:
  37.                 newItem = self.tree.AppendItem(root, item)
  38.                 self.IdNodes.append(newItem)
  39.             else:
  40.                 newItem = self.tree.AppendItem(root, item[0])
  41.                 self.IdNodes.append(newItem)
  42.                 self.AddTreeNodes(newItem, item[1])
  43.  
  44. app = wx.PySimpleApp()
  45. frame = TestFrame()
  46. frame.Show()
  47. app.MainLoop()

Cita:
Para agregar imagenes, hay algo parecido a un imagelist, o me conviene agregarlas directamente desde una ruta... ejemplo "...//Recursos//Icons//1.ico"?
No tengo idea de que sea un imagelist (no trabajo con visual studio).
En cuanto a las rutas se recomienda usar rutas absolutas.