我是一个初学者,想用 tkinter 库制作一个快速阅读应用程序。该应用程序包含一个开始按钮和快速条目,用于在消息小部件中显示用户文本。当按下开始按钮时,事件处理程序应运行并根据消息小部件上的给定速度显示单词,但消息小部件在事件处理程序退出之前不会更改。例如,在以下代码中,消息小部件在do_something 函数结束之前不会更改。
import tkinter as tk
import time
def do_something():
msg.configure(text = "changing")
for i in range(20):
time.sleep(1)
print("...")
print("exit of loop")
window = tk.Tk()
window.geometry("8x50")
window.rowconfigure([1,2], weight = 1, minsize = 10)
window.columnconfigure(1, weight = 1, minsize = 10)
global msg
msg = tk.Message(window, bg = 'grey' ,text = 'Hello', width = 50 )
btn = tk.Button(window, text='click me', width = 10, height = 1, command = do_something)
msg.grid(row = 1, column = 1, sticky = 'nswe')
btn.grid(row = 2, column = 1, sticky = 'nswe')
window.mainloop()
现在,我如何证明此代码可以在事件处理程序结束之前立即对小部件进行更改?对不起我的英语不好