Botão GUI pressionado - tkinter
Estou tentando fazer uma GUI em python para controlar meu carro robótico. Minha pergunta é como faço para executar uma função que determina um botão de espera. Quero mover o carro quando o botão for pressionado e pressionado e parar o carro quando o botão for solto.
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()
Estou tentando simular o que encontrei nesteresponda
Eu tento fazê-lo em umwhile
loop com um booleano. Quando o usuário pressiona o botão, o booleano muda paraTrue
e o código entra no loop while. Quando o usuário libera o botão, o booleano muda paraFalse
e o código sai do loop, mas nesse código o booleano permanece sempre verdadeiro, independentemente de eu ter liberado o botão ou não.
Edit: Eu quero que uma função seja chamada até que ocorra uma condição. A função a ser chamada é hold_down () e a condição para verificar se o botão é liberado.
Atualização: Encontrei uma maneira de fazê-lo funcionar.