Botón GUI presionado - tkinter
Estoy tratando de hacer una GUI en Python para controlar mi auto robótico. Mi pregunta es cómo hago una función que determina un botón de retención. Quiero mover el automóvil cuando se presiona y mantiene presionado el botón y detener el automóvil cuando se suelta el botón.
from Tkinter import *
hold_down = False
root = Tk()
def button_hold(event):
hold_down=true
while hold_down== True:
print('test statement')
hold_down = root.bind('<ButtonRelease-1>',stop_motor)
def stop_motor(event):
hold_down= False
print('button released')
button = Button(root, text ="forward")
button.pack(side=LEFT)
root.bind('<Button-1>',button_forward)
root.mainloop()
Estoy tratando de simular lo que encontré en esteresponder
Trato de hacerlo en unwhile
bucle con un booleano. Cuando el usuario presiona el botón, el valor booleano cambia aTrue
y el código ingresa al bucle while. Cuando el usuario suelta el botón, el valor booleano cambia aFalse
y el código sale del bucle, pero en este código el valor booleano siempre es verdadero, independientemente de si solté el botón o no.
Editar: quiero que se invoque una función hasta que se produzca una condición. La función que se va a llamar es hold_down () y la condición para verificar es que se suelte el botón.
Actualización: encontré una manera de hacerlo funcionar.