Я использую Python 3 и Tkinter, и у меня есть функция wait()
, ожидая, пока не будет нажата клавиша со стрелкой вправо или клавиша со стрелкой влево, однако она просто замерзает все, и мне нужно заставить остановить программу.Tkinter Подождите, пока клавиша будет нажата
from tkinter import *
right = left = False
def setLeft(event):
global left
left = True
print('Left!')
def setRight(event):
global right
right = True
print('Right!')
def wait():
global right, left
left = right = 0
while not (left or right):
pass
print(right) #0 for left, 1 for right
left = right = 0
root = Tk()
root.bind('<Left>', setLeft)
root.bind('<Right>', setRight)
Есть ли способ для функции wait()
работать, как предполагается, или мне нужно найти другой путь?
Почему нужно ждать? По умолчанию графический интерфейс постоянно находится в состоянии ожидания. Просто введите код, который вы хотите запустить в 'setLeft' и' setRight' –
@BryanOakley. Я хочу дождаться нажатия любой клавиши, а затем выяснить, какой из них был, чтобы я мог настроить дерево. – nedla2004
Но вы знаете, какой из них был нажат: если вызывается 'setLeft', была нажата стрелка влево. –