Macos tkinter python3.5 osx即将打开。askdirectory位于所有内容的顶部

Macos tkinter python3.5 osx即将打开。askdirectory位于所有内容的顶部,macos,tkinter,python-3.5,Macos,Tkinter,Python 3.5,我使用的是python3.5 tkinter osx sierra 看看这个简单的例子: root = tk.Tk() root.withdraw() root.focus_force() folder = filedialog.askdirectory() 当osx finder窗口打开时,它位于以下位置: 升华文本/终端/空闲/(当我从那里运行脚本时) 如何使finder窗口始终在所有内容上方弹出 干杯 这在Linux上也会发生。这就是测试解决方案的地方。首先,它发生的原因。根窗口是fi

我使用的是python3.5 tkinter osx sierra 看看这个简单的例子:

root = tk.Tk()
root.withdraw()
root.focus_force()

folder = filedialog.askdirectory()
当osx finder窗口打开时,它位于以下位置: 升华文本/终端/空闲/(当我从那里运行脚本时)

如何使finder窗口始终在所有内容上方弹出

干杯
这在Linux上也会发生。这就是测试解决方案的地方。首先,它发生的原因。根窗口是filedialog的父窗口。在Linux(显然还有Osx)上,窗口组的概念是严格遵守的。通常,filedialog放置在父窗口上,但当您提取父窗口时,它没有可从中绘制的活动几何图形。解决方案是在退出根目录之前调用filedialog。这就是如何做到的

root = tk.Tk()
root.focus_force()
# Cause the root window to disappear milliseconds after calling the filedialog.
root.after(100, root.withdraw)

folder = filedialog.askdirectory()

谢谢,我完全像你提到的那样尝试了,finder窗口覆盖了所有东西,但是:SublimiteText UI/Idle UI/Terminal UI,我确实遇到了与以前相同的问题。