首页 > 解决方案 > 为什么 Toplevel 窗口不会保持在顶部?

问题描述

Python 3.8 tkinter 8.6 以下代码创建了一个子窗口,但该子窗口被根窗口覆盖。为什么 Toplevel 不在顶部?尝试了所有 3 个几何管理器,但均未成功。甚至takefocus也无济于事。孩子首先出现并被根覆盖。''' 来自 tkinter 导入 *

root = Tk()
root.geometry("900x600")
root.title(" Root window with Toplevel as child") 

achild = Toplevel(root, takefocus = True )  
achild.geometry("300x200+300+200")  
achild.title("This is window named achild")

def main() :    
    mainloop()

if __name__ == '__main__' :
    main()

标签: toplevel

解决方案


使用提升方法保持achild在根窗口之上:

achild.lift()

以下将保持achild窗口高于其他窗口(包括非 Tk 窗口):

achild.attributes("-topmost", True)

推荐阅读