Eventos en TkInter

Chema Cortés py en ch3m4.org
Lun Sep 13 10:54:38 CEST 2004


On Sunday 12 September 2004 20:08, Antonio Castro wrote:

> Me gustaría tratar los campos de entrada de forma que cuando alguien
> salga de un campo, (en el cual se supone puede haber ocurrido una
> modificación del mismo), se pueda asociar alguna acción como por
> ejemplo propagar una serie de cambios, etc. He probado con una
> serie de eventos:
>
> <Return>,<Tab>,<Shift-Tab>, y otros pero  <Shift-Tab>, no mefunciona
> y además hay un problema mayor.
>
> Si el usuario sale del campo haciendo click con el ratón en un
> campo distinto, el evento no puede capturarse ya que se produce en ese
> nuevo campo y asociar un evento a cada campo me parece una chapuza.
>
> Debería existir alguna forma que permita detectar la perdida del foco
> sobre un campo y tratarla con un evento.

Efectivamente, para eso están los eventos '<FocusIn>' y '<FocusOut>':

import Tkinter

def gotFocus(event):print "Focus in"
def lostFocus(event):print "Focus out"

r=Tkinter.Tk()
e1=Tkinter.Entry(r)
e1.bind("<FocusIn>",gotFocus)
e1.bind("<FocusOut>",lostFocus)
e1.pack()
Tkinter.Entry(r).pack()
r.mainloop()


Te aconsejo éste enlace para la documentación de Tkinter:
http://effbot.org/books/tkinterbook/

El tema de los eventos está tratado en:
http://effbot.org/zone/tkinter-events-and-bindings.htm
------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: no disponible
Type: application/pgp-signature
Size: 189 bytes
Desc: no disponible
URL: <http://mail.python.org/pipermail/python-es/attachments/20040913/35f7fed3/attachment.pgp>
------------ próxima parte ------------
_______________________________________________
Python-es mailing list
Python-es en aditel.org
http://listas.aditel.org/listinfo/python-es


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