Foros del Web » Programando para Internet » Python »

Como obtener el item selecionado en un List_Ctrl ???

Estas en el tema de Como obtener el item selecionado en un List_Ctrl ??? en el foro de Python en Foros del Web. Necesito ayuda para obtener el elemento seleccionado de un List_Ctrl en wx.python . Ya he hecho un evento para cada vez que se seleccioné un ...
  #1 (permalink)  
Antiguo 30/07/2011, 12:56
 
Fecha de Ingreso: julio-2011
Mensajes: 10
Antigüedad: 13 años, 4 meses
Puntos: 2
Pregunta Como obtener el item selecionado en un List_Ctrl ???

Necesito ayuda para obtener el elemento seleccionado de un List_Ctrl en wx.python. Ya he hecho un evento para cada vez que se seleccioné un Ítem, pero no encuentro el método necesario para poder obtener el valor del Ítem seleccionado. Alguien sabe?
en una list_box el metodo seria lista.GetStringSelection()...
  #2 (permalink)  
Antiguo 01/08/2011, 11:28
Avatar de 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: Como obtener el item selecionado en un List_Ctrl ???

Dado que no pones mas código y la pregunta parece no del todo elaborada. Estoy asumiendo que lo quieres es obtener todos los items de un listctrl que hayan sido seleccionados.

Aquí te dejo un ejemplo:
Código Python:
Ver original
  1. import wx
  2.  
  3. class MyFrame(wx.Frame):
  4.     def __init__(self, *args, **kwargs):
  5.         wx.Frame.__init__(self, *args, **kwargs)
  6.         self.panel = MyPanel(self)
  7.        
  8. class MyPanel(wx.Panel):
  9.     def __init__(self, *args, **kwargs):
  10.         wx.Panel.__init__(self, *args, **kwargs)
  11.         box = wx.BoxSizer(wx.VERTICAL)
  12.        
  13.         self.list = wx.ListCtrl(self, -1, style=wx.LC_REPORT|wx.SUNKEN_BORDER)
  14.         self.list.InsertColumn(0, "ID")
  15.         for i in range(3):
  16.             self.list.InsertStringItem(0, "%d" % i)
  17.        
  18.         self.button = wx.Button(self, -1, "Presione")
  19.         self.button.Bind(wx.EVT_BUTTON, self.onClick)
  20.        
  21.         box.Add(self.list, 1, wx.EXPAND)
  22.         box.Add(self.button, 0)
  23.         self.SetSizer(box)
  24.         self.Center()
  25.    
  26.     def getSelectedItems(self):
  27.         return list(self.getSelectedIterItems())
  28.    
  29.     def getSelectedIterItems(self):
  30.         next = self.list.GetFirstSelected()
  31.         while(next != -1):
  32.             yield next
  33.             next = self.list.GetNextSelected(next)
  34.            
  35.     def onClick(self, event):
  36.         print self.getSelectedItems()
  37.        
  38. class MyApp(wx.App):
  39.     def OnInit(self):
  40.         frame = MyFrame(None, -1, "ListCtrl")
  41.         frame.Show(True)
  42.         self.SetTopWindow(frame)
  43.         return True
  44.  
  45. app = MyApp(1)
  46. app.MainLoop()

Etiquetas: item, listas, list_ctrl, metodos, wx.python
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:28.