【发布时间】:2012-08-14 06:59:31
【问题描述】:
我正在使用这样的代码创建一个全帧(无装饰)窗口(在 python 3.2 中使用 tkinter):
self.root = Tk()
self.W, self.H = self.root.winfo_screenwidth(), self.root.winfo_screenheight()
self.root.overrideredirect(1) # full screen, no menu or borders
self.root.geometry("%dx%d+0+0" % (self.W, self.H))
当我尝试打开文件对话框或消息框时,它们会出现在全帧窗口下。在打开其中一个对话框之前,我可以通过在主窗口上调用withdraw() 来验证这一点。例如,
file = tkinter.filedialog.askopenfilename(parent=self.root) # UNDER main window
在 windows 上我没有这个问题,只有在 fedora 14 和 ubuntu 12.04 上我才注意到它。 (我没有在 Mac 上测试过)。我将父母传递给对话框,但他们似乎没有注意。有人可以帮我理解我做错了什么吗?谢谢。
【问题讨论】:
标签: python focus tkinter python-3.2