Tkinter 菜单栏
Tkinter 工具包附带了创建图形应用程序的所有基本控件。几乎每个应用程序都有一个主菜单。正如所料,Tkinter 支持在应用程序窗口中添加主菜单。
下面的屏幕截图演示了一个基于 Tkinter 的菜单:
![Tkinter 菜单](/img/Tutorial/Tkinter/Tkinter Menubar.png)
Tkinter 菜单栏
你可以使用下面的代码使用 Tkinter 创建一个 simle 菜单。每个选项(new
,open
,save
..)都应该有自己的回调函数。
from Tkinter import *
def donothing():
x = 0
root = Tk()
menubar = Menu(root)
filemenu = Menu(menubar, tearoff=0)
filemenu.add_command(label="New", command=donothing)
filemenu.add_command(label="Open", command=donothing)
filemenu.add_command(label="Save", command=donothing)
filemenu.add_separator()
filemenu.add_command(label="Exit", command=root.quit)
menubar.add_cascade(label="File", menu=filemenu)
helpmenu = Menu(menubar, tearoff=0)
helpmenu.add_command(label="Help Index", command=donothing)
helpmenu.add_command(label="About...", command=donothing)
menubar.add_cascade(label="Help", menu=helpmenu)
root.config(menu=menubar)
root.mainloop()
我们通过调用创建菜单栏:
menubar = Menu(root)
其中 root
是 Tk()
对象。
菜单栏可以包含零个或多个子菜单,例如文件菜单,编辑菜单,视图菜单,工具菜单等。
可以使用相同的 Menu()
调用创建子菜单,其中第一个参数是要附加到的菜单栏。
filemenu = Menu(menubar, tearoff=0)
menu = Menu(menubar, tearoff=0)
可以使用 add_command()
方法将各个选项添加到这些子菜单:
filemenu.add_command(label="New", command=donothing)
filemenu.add_command(label="Open", command=donothing)
filemenu.add_command(label="Save", command=donothing)
在示例中,我们创建了回调函数 donothing()
,并为了简单起见将每个命令链接到它。使用 add_comment()
函数添加一个选项。我们调用 add_cascade()
将此菜单列表添加到特定列表中。