说我有一些简单的代码,像这样:
from Tkinter import * root = Tk() app = Toplevel(root) app.mainloop()
这将打开两个窗口:Toplevel(根)窗口和Tk()窗口.
是否可以避免打开Tk()窗口(root)?如果是这样,怎么样?我只想要顶级.我希望这种情况发生,因为我正在制作一个会打开多个窗口的程序,这些都是Toplevel的根.
谢谢!
withdraw()
方法从屏幕中删除窗口.
iconify()
方法最小化窗口,或将其变为图标.
deiconify()
方法将重绘窗口,和/或激活它.
如果选择withdraw(),请确保在测试之前考虑了退出程序的新方法.
例如
from Tkinter import * # tkinter in Python 3 root = Tk() root.withdraw() top = Toplevel(root) top.protocol("WM_DELETE_WINDOW",root.destroy) but = Button(top,text='deiconify') but['command'] = root.deiconify but.pack() root.mainloop()
protocol()
方法可用于注册将在调用时调用的函数
按下Toplevel窗口的关闭按钮.在这种情况下,我们可以使用destroy()
退出.