Toplevel控件为其他空间提供单独的容器,比如框架。对简单的单独视窗应用来说,初始化Tk时创建的根Toplevel可能是你所需要的唯一外框。
类似于弹出窗口,具有独立的窗口属性(如标题栏、边框等)
参考博客: https://blog.csdn.net/qq_41556318/article/details/85597698
Toplevel有四种类型
1.主顶层,作为根被引用;
2.子顶层,依赖于根,若根被破坏,则子顶层也被破坏;
3.临时顶层,总是位于父顶层的顶部,如果父顶层被图标化或最小化之后,则它们被隐藏起来;
4.未被视窗管理者创建过的顶层,可以通过设置一个overrideredirect标志为非零值来创建,该窗口不能被缩放或拖动。
root=Tk()
Label(root,text="主顶层(默认)").pack(pady = 10)
t1=Toplevel(root)
Label(t1,text="子顶层").pack(padx=10, pady=10)
t2=Toplevel(root)
Label(t2,text="临时顶层").pack(padx=10, pady=10)
t2.transient(root)
t3=Toplevel(root,borderwidth=5, bg='green')
Label(t3,text="不被视窗管理的顶层控件",bg='blue', fg='white').pack(padx=10, pady=10)
t3.overrideredirect(1)
t3.geometry("200x150+50+50")
root.mainloop()