2016-02-03 56 views
0

我遇到過我認爲可能是一個錯誤的地方,無論何時我試圖在tkinter上製作菜單欄(Menu)mac,任何非級聯菜單物品 - 即menu.add_command而不是menu.add_cascade - 看起來不起作用。Non-cascade type menubar items not working on Tkinter with Mac OSX

import tkinter as tk 

def callback(): 
    print("Hello World") 

root = tk.Tk() 

menu = tk.Menu(root) 

# Adding cascade 
menu2 = tk.Menu(menu, tearoff=0) 
menu2.add_command(label="CascadeItem", command=callback) 
menu.add_cascade(menu=menu2, label="Cascade") 

# Adding non-cascade 
menu.add_command(label="NonCascade", command=callback) 

root.config(menu=menu) 

root.mainloop() 

當我運行上述代碼時,我能夠看到「級聯」菜單項,但不能看到「NonCascade」菜單項。

我在這裏做錯了嗎?這是一些類型的錯誤?或者Mac不支持菜單欄上的非級聯類型菜單項?

回答

2

您是對的:您無法將命令添加到OSX菜單欄中。沒有解決方法。從可用性的角度來看,這是一個壞主意,所以OSX禁止它。

+0

我認爲這是事實。這是不明智的,但我知道你可以在窗戶中,所以我想我會檢查。謝謝。 – RobertR