Я новичок в python Tkinter и обнаружил здесь проблему. Я пытаюсь получить ввод от пользователя, не нажимая клавишу ввода, и хочу использовать ввод как обновленный label2
. Однако я получаю обновленную метку только при выполнении while
l oop fini sh (отображается только последний ввод). Не могли бы вы помочь мне узнать, в чем я ошибаюсь?
import tkinter as tk
import msvcrt
root= tk.Tk()
myCanvas = tk.Canvas(root, width = 500, height = 200)
myCanvas.pack()
def do_printing():
count=1
while (count>0):
print('Count before= ',count)
while 1:
input1 = msvcrt.getwch()
count=count+1
break
label2 = tk.Label(root, font=('Arial', 20))
label2.config(text=input1)
myCanvas.create_window(100, 50, window=label2)
if count==7:
break
print('finished')
B1 = tk.Button(root, text ="Option 1", font=('Courier', 12), command= do_printing)
myCanvas.create_window(40, 30, window=B1)
root.mainloop()