我有一个位于托盘中的应用程序,当您单击托盘菜单中的某个菜单项时,我试图让它显示/隐藏。代码几乎可以工作,但窗口显示在其他窗口后面,而不是像它应该的那样在顶部。(注意,我不希望它总是在顶部,只是弹出到窗口堆栈的顶部。)
它似乎在 Windows 上工作得很好,但在 Mac 上,它始终低于同时拉到它前面的任何其他窗口。
相关代码如下。
def on_hide_frame(self, event):
self.frame.on_iconify(event)
def on_restore_frame(self, event):
if self.frame.IsIconized():
self.frame.Iconize(False)
if not self.frame.IsShown():
self.frame.Show(True)
self.frame.Raise()
另请注意,当调用 this 时,self.frame
它是同一个对象,app.GetTopWindow()
并且将两者互换并不能修复错误。