我正在尝试创建一个基本的Tkinter窗口。
根据在线教程,要创建窗口,必须使用以下内容:
import Tkinter
window=Tkinter.Tk()
window.mainloop()但是,当我尝试使用相同的代码时,python直接在window=Tkinter.Tk()和window.mainloop()中显示窗口,没有任何效果。有人能解释原因吗?
编辑:当我将代码放入文件并运行它时,代码工作得很好。它只是在交互提示下不起作用。
发布于 2014-06-30 15:41:46
对mainloop的调用就在那里,这样您就可以在窗口创建后与其交互。如果您有一个只执行以下操作的Python脚本:
import Tkinter
window = Tkinter.Tk()脚本将在window创建后立即退出,因此您甚至可以幸运地看到它在脚本退出时消失之前就被绘制了。(也就是说,如果window甚至被绘制过;在我在Linux和window上的测试中,除非调用mainloop,否则不会绘制window;即使在Tkinter.Tk()调用之后调用time.sleep,在交互提示符中只绘制没有mainloop调用的window )。
mainloop()还(也是最重要的)允许Tkinter侦听可能嵌入在Tk对象上的事件,例如按下按钮、收音机等,并将这些事件分派给绑定到被触发事件的方法。如果没有该功能,您就会有一个可以查看的窗口,而不会有太多其他功能。
https://stackoverflow.com/questions/24493575
复制相似问题