【发布时间】:2021-02-21 08:00:30
【问题描述】:
有没有办法在主窗口前面放一个顶层窗口?
代码如下:
from tkinter import *
root = Tk()
root.geometry('1280x720')
def create_new_window():
root2 = Toplevel()
root2.geometry('500x500')
create_new_window()
mainloop()
在这里,我希望root2 窗口始终保持在root 窗口前面。
我尝试使用root2.attributes('-topmost' , 1),但问题是这一行也将窗口置于所有其他程序之上。
我想要的是顶层窗口应该只在主窗口的前面,当我点击主窗口时它不应该返回。
有没有办法在 tkinter 中实现这一点?
如果有人能帮助我,那就太好了。
【问题讨论】:
-
你试过
root.update_idletasks()吗? -
@Atlas435:这会将顶层窗口带到主窗口的前面,但它只会这样做一次。所以如果我点击主窗口,顶层窗口会再次返回。
-
@CoolCloud:我用
root2.focus_force()看不出有什么不同。 -
我把问题读错了,我以为你只是想把窗户带到前面,而不是永远呆在那里。
标签: python tkinter toplevel topmost