Esta sección fue analizado por expertos para que tengas la garantía de la exactitud de este escrito.
Solución:
Muchos controles tkinter se pueden asociar con una variable. Para aquellos, puede poner un rastro en la variable para que se llame a alguna función cada vez que cambie la variable.
Consulte http://effbot.org/tkinterbook/variable.htm para obtener más información sobre los seguimientos de variables. Son una de las muchas funciones excelentes y novedosas de tk.
Para que se active un evento cuando se realiza una selección, configure la opción de comando para OptionMenu
ex.
def OptionMenu_SelectionEvent(event): # I'm not sure on the arguments here, it works though
## do something
pass
var = StringVar()
var.set("one")
options = ["one", "two", "three"]
OptionMenu(frame, var, *(options), command = OptionMenu_SelectionEvent).pack()
Si está utilizando una clase de variable Tkinter como StringVar()
para almacenar las variables en tu Tkinter OptionMenu
o Checkbutton
puedes usar su trace()
método.
trace()
básicamente, monitorea la variable cuando se lee o se escribe.
los trace()
método toma 2 argumentos – mode
y function callback
.
trace(mode, callback)
- El argumento de modo es uno de “r” (llamar al observador cuando alguien lee la variable), “w” (llamar cuando alguien escribe la variable) o “u” (indefinir; llamar cuando se elimina la variable).
- El argumento de devolución de llamada es la llamada que desea realizar a la función cuando se cambia la variable.
Así es como se usa –
def callback(*args):
print("variable changed!")
var = StringVar()
var.trace("w", callback)
var.set("hello")
Fuente: http://effbot.org/tkinterbook/variable.htm
Si para ti ha sido de provecho nuestro post, sería de mucha ayuda si lo compartes con otros juniors de esta manera nos ayudas a extender esta información.