我有一个 Tkinter 窗口,我需要它位于其他所有内容之上 - 包括全屏窗口。
我尝试过的事情:
root.attributes('-topmost', True)
在主循环之前 - 不起作用
self.root.wm_attributes("-topmost", True)
类内部 - 不起作用
root.overrideredirect(True)
在 mainloop 之前 - 仅适用于 Linux
root.lift()
在主循环之前 - 不起作用
最后,我将 root.lift()
设置为重复调用:
class TestingGUI:
def __init__(self, root):
self.root = root
self.EnsureTop()
def EnsureTop(self):
root.lift()
root.after(5000, self.EnsureTop)`
这在某种意义上是有效的,它成功地将窗口提升到我手动切换为“始终在最前面”的任何其他窗口之上,例如使用Dexpot,但关键是它不适用于全屏应用程序。
具体来说,我需要在游戏中显示它,因为它是一个游戏内音乐播放器。对于需要重复使用某些命令以确保窗口再次被调用到顶部的解决方案,我很满意。
最佳答案
正如 TessellatingHeckler 在评论中指出的那样,无法确保一个窗口停留在另一个全屏窗口之上。我通过结合循环 root.lift()
并要求我的用户在无边界窗口中运行他们的应用程序来解决这个问题。
关于python - 强制 Tkinter 窗口保持全屏显示 - Windows 10,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37950272/