我有一个Tkinter窗口,我需要它始终在其他所有窗口之上 - 包括全屏窗口。
我尝试过以下方法:
root.attributes('-topmost',True)
主循环之前 - 无效
self.root.wm_attributes(“-topmost”,True)
在类中 - 无效
root.overrideredirect(True)
主循环之前 - 仅适用于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)的任何其他窗口之上,但重要的是它无法用于全屏应用程序。
具体来说,我需要在游戏中显示它,因为它是一个游戏内音乐播放器。如果需要,我可以接受某些命令需被重复使用以确保窗口再次置于顶部的解决方案。