Tkinter是事件驱动的。这意味着必须有一个动作(来自脚本或用户)给tkinter来改变事情。在
mainloop()函数执行窗口,因此没有其他选择。幸运的是,有解决方案:
如果要在tkinter窗口旁边执行操作,有两个选项:
您可以在调用mainloop()之前执行所有这些操作。在
或者让它们在用户以按钮等形式执行某个操作时执行。在
也可以在后台用threading或{a2}运行函数。在
如果您选择此选项,我建议您使用线程,因为:它很容易使用
您可以在脚本的不同部分之间进行通信。在多线程中,您可能很难做到这一点
然而,这完全取决于具体任务。在
在示例代码中,您给出的最佳选择是在执行mainloop()之前调用它。例如:
window = Tk()
canvas1 = Canvas(window,height=600,width=600)
file = PhotoImage(file = 'GoogleDrive.png')
image = canvas1.create_image(300, 300, anchor = CENTER, image = file)
canvas1.pack()
print ('\nA: Google Drive')
time.sleep(1)
print ('B: Google Slides')
time.sleep(1)
print ('C: Google Photos')
canvas1.mainloop()
尽管你可以把它放在mainloop()之前的任何地方。在