【发布时间】:2014-03-05 22:12:39
【问题描述】:
下面是使用 Tkinter 和 Python 创建独立窗口的代码:
import Tkinter
Tkinter.NoDefaultRoot()
win1=Tkinter.Tk()
win2=Tkinter.Tk()
Tkinter.Button(win1, text='Woho!',command=win1.destroy()).pack()
Tkinter.Button(win2, text='Woho!',command=win2.destroy()).pack()
win1.mainloop()
执行时显示:
Traceback (most recent call last):
File "C:\Users\Administrator\Desktop\eclipse\Python Projects\Project 1\Source1\mod.py", line 8, in <module>
Tkinter.Button(win1, text='Woho!',command=win1.destroy()).pack()
File "C:\Python27\lib\lib-tk\Tkinter.py", line 2106, in __init__
Widget.__init__(self, master, 'button', cnf, kw)
File "C:\Python27\lib\lib-tk\Tkinter.py", line 2036, in __init__
(widgetName, self._w) + extra + self._options(cnf))
_tkinter.TclError: can't invoke "button" command: application has been destroyed
我是 Python 新手,因此不明白它的含义。我哪里错了?
【问题讨论】:
-
Tkinter 并非设计用于运行两个
Tk实例。如果您需要多个窗口,请创建一个Tk实例,然后再创建一个Toplevel实例。
标签: python python-2.7 user-interface tkinter tk