我被要求使用Tkinter制作聊天程序。对于最后一部分,我应该打开聊天窗口,它有一个Entry字段,一个Button(SEND)和一个Text Widget来显示聊天记录。这是我学习Tkinter的第一周,我在课堂上被告知只要用户没有关闭窗口或写mainloop()
,root.quit()
就是无限循环。所以在聊天窗口中,我应该每隔10秒检查一次新消息。是否可以在mainloop()
中执行此操作?如果是,请告诉我如何,因为我不知道如何发生这种情况,因为mainloop()
之前的内容只读了一次。例如,类似print语句的内容只打印一次,即使mainloop()
是无限循环。
答案 0 :(得分:1)
您可以调用根窗口的after
方法以便将来调用某些内容。如果该函数本身调用def check_for_messages():
<your code here>
root.after(10000, check_for_messages)
,则可以将其设置为使您的函数永远每10秒运行一次。
mainloop()
在调用mainloop()
之前调用该函数一次,并且只要while (cheese == false) {
正在运行,它就会每10秒运行一次。