Python tkinter最上面的和覆盖的直接

Python tkinter最上面的和覆盖的直接,python,python-3.x,tkinter,Python,Python 3.x,Tkinter,我想写一个窗口设置为始终在顶部且无边框的程序。因此,我编写了以下程序,但无法按预期工作(macOS Sierra,10.12.3): 失败的一个屏幕截图 然而,当我更改overridedirect和属性的顺序时,令人惊讶的是,它起了作用 import tkinter as tk root=tk.Tk() tk.Label(root,text='some text').pack() root.overrideredirect(1) root.attributes('-topmost',True)

我想写一个窗口设置为始终在顶部且无边框的程序。因此,我编写了以下程序,但无法按预期工作(macOS Sierra,10.12.3):

失败的一个屏幕截图

然而,当我更改overridedirect和属性的顺序时,令人惊讶的是,它起了作用

import tkinter as tk
root=tk.Tk()
tk.Label(root,text='some text').pack()
root.overrideredirect(1)
root.attributes('-topmost',True)
root.mainloop() #this one works
成功的一个截图


有人能告诉我为什么这两行的顺序很重要吗?

可能唯一的解释是tkinter在OSX上有点问题。这两个脚本在ubuntu/linux上给出了相同的结果(后面的图像)。
import tkinter as tk
root=tk.Tk()
tk.Label(root,text='some text').pack()
root.overrideredirect(1)
root.attributes('-topmost',True)
root.mainloop() #this one works