Duda sobre wxpython

Eduardo Matus ematus en gmail.com
Lun Jul 20 20:52:18 CEST 2009


si, es una opcion.. y no se porq no seria elegante.. si estas preocupado de
que tu codigo se vea desordenado hereda la clase del formulario

class Formulario(wx.Frame):
        # constructor y demases

class FormularioHeredado(Formulario):
       def __init__(self, *args, **kwargs):
              Formulario.__init__(self, *args, **kwargs)
       # tus funciones antiguas

pero no pongas un while True, esto hará que tu programa se pege y no habran
actualizaciones de texto y de ningun tipo en el formulario.


2009/7/20 Carlos Herrera Polo <carlos.herrerapolo en gmail.com>

> ? Ya me marearon estimados...
> Y seria mas sencillo si paso las funciones que tenia y las pongo todas como
> funciones dentro de la clase class MyFrame_principal ( wx.Frame ) ???
>
> No seria lo mas elegante, pero creo que asi funcionaria no es asi ?
> Ya que al estar declaradas dentro de esa clase  si puedo hacer referencia a
> los objetos ahi creados, que les parece ?
>
> El 20 de julio de 2009 13:44, Carlos Zuniga <carlos.zun en gmail.com>
> escribió:
>
> > 2009/7/20 Carlos Herrera Polo <carlos.herrerapolo en gmail.com>:
> > > Mi codigo antiguo era un programa con varias funciones y comenzaba asi:
> > >
> > > def main():
> > >    while 1 == 1:
> > >        fn_borra_directorio()
> > >        gi_total_msg = 0
> > >        process_server(gs_srv_imap, gs_usr_imap, gs_pass_imap)
> > >        print 'Procesando : ' + str (gs_email_remitente_smtp)
> > >
> > >        # Pausa de 30 segundos
> > >        time.sleep(30)
> > >
> > >
> > > La funcion process_server invoca a otras funciones mas, utilizo
> solamente
> > > programacion estructurada, el programita hace lo que necesito.
> > >
> > > Luego, diseñe un formulario :
> > >
> > > class MyFrame_principal ( wx.Frame ):
> > >
> > > y ahora dentro de ese formulario cree un evento timer que hace lo que
> > hacia
> > > el codigo anterior, pero dentro de una funcion ( o metodo) de la clase
> > > MyFrame_principal....
> > >
> > > El tema esta que dentro de ese evento llamo a la funcion
> > "process_server",
> > > la cual llama a varias funciones mas y en una de ellas tengo el print
> que
> > > necesito cambiar.... ahi es donde necesito hacer referencia a las
> > etiquetas
> > > para ir cambiando atributos.
> > >
> > >
> > > def OnTimer(self, event):
> > >
> > >        fn_borra_directorio()
> > >        gi_total_msg = 0
> > >        global gi_total_procesos
> > >        gi_total_procesos = gi_total_procesos + 1
> > >        process_server(gs_srv_imap, gs_usr_imap, gs_pass_imap)
> > >        self.m_staticText5.SetLabel(str (gi_total_procesos) + ' |
> > Procesando
> > > : ' + str (gs_email_remitente_smtp) + ' | '+fn_today.fn_today())
> > >
> > >
> > >
> > > Encontre esto :
> > >
> >
> http://osdir.com/ml/org.user-groups.python.argentina/2007-05/msg00407.html
> > >
> > > Pero no me funciona..... :s
> > >
> >
> > En lugar de hacer un print, por que no mejor hacer que retornen el texto?
> >
> > def OnTimer(self, event):
> >    status = process_everything()
> >    self.staticText5.SetLabel(unicode(status))
> >
> > --
> > Linux Registered User # 386081
> > A menudo unas pocas horas de "Prueba y error" podrán ahorrarte minutos
> > de leer manuales.
> >
> > _______________________________________________
> > Lista de correo Python-es
> > http://listas.aditel.org/listinfo/python-es
> > FAQ: http://listas.aditel.org/faqpyes
> >
> _______________________________________________
> Lista de correo Python-es
> http://listas.aditel.org/listinfo/python-es
> FAQ: http://listas.aditel.org/faqpyes
>
_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es