Tengo una duda de como se manejan los parámetros en python específicamente con wxpython por ejemplo lo que quiero realizar es teniendo una clase principal llamada frame en el construcctor de mi aplicación tengo varios metodos y quiero hacer lo siguiente:
Código Python:
Ver originalclass principal(wx.Frame):
#--------------------------------------------------------------------------------
#Constructor principal
def __init__(self):
wx.Frame.__init__(self, None, wx.ID_ANY,
"Paso Parametros", size=(500, 400))
self.Bind(wx.EVT_CLOSE, self.OnClose)
self.meSystem()
self.InitUI()
self.Centre()
self.Show()
#----------------------------------------------------------------------..........
# Construccion de la GUI
def InitUI(self):
menubar = wx.MenuBar()
fileMenu = wx.Menu()
fitem = fileMenu.Append(wx.ID_EXIT, 'Quit', 'Quit application')
menubar.Append(fileMenu, '&File')
self.SetMenuBar(menubar)
self.Bind(wx.EVT_MENU, self.OnQuit, fitem)
################# Tengo este componente combobox agregado el cual llama al metodo OnSelect
hbox3= wx.BoxSizer(wx.HORIZONTAL)
cb = wx.ComboBox(self, pos=(50, 30), choices=self.distros,
style=wx.CB_READONLY)
cb.Bind(wx.EVT_COMBOBOX, self.OnSelect)
################# en el metodo OnSelect tengo este código el odigo que imprime la selección del combobox
def OnSelect(self, e):
i = e.GetString()
print "Has seleccionado de combobox:\n" + i
self.etiquetas.SetLabel(i)
################# Regreso el control a Frame y cambio el valor de mi etiqueta con el valor que regresa el metodo OnSelect
hbox4 = wx.BoxSizer(wx.HORIZONTAL)
self.etiquetas = wx.StaticText(self,-1,label=u"Seleccionado del comboBox")
hbox4.Add(self.etiquetas,border=10)
vbox.Add(hbox4, flag=wx.LEFT, border=30)
vbox.Add((-1, 10))
################# Hasta aqui todo bien el problema que tengo ahora es que esa misma variable self.etiquetas que en realidad
#################contiene el valor de regreso del combobox necesito utilizarla dentro de otro metodo pero no encuentro como manejar dicha variable para enviarla al
#################metodo siguiente llamado otroMetodo:
def otroMetodo(self, e):
print self.resultado
Resumiendo obtengo del metodo onSelect el string de la selección del usuario en la variable self.etiquetas con la cual actualizo la variable en mi método InitUI, lo que necesito hacer es ese string del método InitUI actualizado desde el comboBox enviarlo a un nuevo método para hacer uso de esa selección dentro de ese otro método.
De ante mano muchas gracias agradezco cualquier ayuda, buena tarde.