为什么菜单没有出现在窗口中?

时间:2019-08-19 16:40:51

标签: tkinter

我正在尝试将菜单添加到UI中,但没有显示。我直接从effbot.org/tkinterbook/menu.htm复制了所有内容,但仍无法正常工作。如果相关,我正在使用Python 3和macOS 10。

from tkinter import *

master = Tk()
master.geometry('300x300')
master.title('Table')

def hello():
    print("hello")

menubar = Menu(master)
menubar.add_command(label = "Hello!", command = hello)
menubar.add_command(label = "Quit!", command = master.quit)

master.config(menu=menubar)

master.mainloop()

编辑:我尝试了子菜单,但它仍然没有出现,并且窗口为空:code and tkinter window

2 个答案:

答案 0 :(得分:0)

在OSX上,不能在菜单栏上放置命令。另外,您还显示了窗口的屏幕快照,但是在OSX上,菜单栏出现在屏幕顶部,就像普通的Mac应用程序一样。

答案 1 :(得分:0)

我已经测试了您的代码,看来对我来说效果很好。

Python 3.6 / Windows 10。

这是一张图片,显示相关代码正常工作。

enter image description here

就像布莱恩提到的那样,也许您需要在这里使用子菜单。

修改后的代码:

from tkinter import *


master = Tk()
master.geometry('300x300')
master.title('Table')


def hello():
    print("hello")


menubar = Menu(master)
master.config(menu=menubar)
submenu = Menu(menubar, tearoff=0)
menubar.add_cascade(label="File", menu=submenu)
submenu.add_command(label="Hello!", command=hello)
submenu.add_command(label="Quit!", command=master.quit)


master.mainloop()

enter image description here