[pyar] wxpython, cambiar los botones de la ventana
Alejandro Santos
listas en alejolp.com
Mie Jun 16 16:08:21 ART 2010
On 16/06/10 15:48, Aldo Vizcaino wrote:
>
>
> Mientras hacés el time.sleep() no está corriendo el event loop. La
> ventana no
> se refresca, no pasa nada. Usá un timer de wx en vez de time.sleep.
>
>
> Hola Roberto,
>
> Gracias... igualmente, no logro encontrar la función correcta que haga
> eso :(
> he probado con wx.Sleep(10), y con wx.Timer.Start(wx.Timer(),1000,True)
>
> seguiré buscando a ver que encuentro :D
>
Aldo,
Un Timer es un objeto que dispara eventos cada cierto tiempo. Hay dos
formas de usarlo.
En los dos casos la variable "panel" es un Panel de WX y el print se
ejecuta cada 1 segundo (1000ms):
a) Hacer una subclase de la clase Timer y redefinir el método Notify:
class ImprimirMensaje(wx.Timer):
def Notify(self):
print "evento disparado"
# Crear la instancia del objeto Timer
t = ImprimirMensaje(panel, wx.NewId())
t.Start(1000)
b) Crear un Timer generico y escuchar los eventos EVT_TIMER:
def callback():
print "evento disparado"
t = Timer(panel, wx.NewId())
t.Start(1000)
panel.Bind(wx.EVT_TIMER, callback)
Saludos,
--
Alejandro Santos
http://www.alejolp.com.ar
More information about the pyar
mailing list