使用菜单
菜单是由两个元素一个是菜单按钮,另一个是菜单列表。菜单列表是用户点击菜单按钮之后出现的,而菜单按钮是应用中始终显示的内容。
菜单按钮的创建格式为w = tk.Menubutton(parent, option=value, ...)
。常用的配置属性有。
direction
,指示菜单列表出现在菜单按钮的那个方向上。menu
,指定菜单按钮点击后对应的菜单列表。textvariable
,指定菜单按钮的控制变量,StringVar类型。
菜单列表的创建格式为w = tk.Menu(menubutton, option=value, ...)
。菜单列表中的内容可以有文字或图片指令、复选框、单选框以及子菜单选项。菜单列表常用的方法有。
.add(kind, coption, ...)
,向菜单列表中添加指定类型的新元素,元素类型可以是cascade
(子菜单列表,相当于调用.add_cascade()
)、checkbutton
(复选框,相当于调用.add_checkbutton()
)、command
(普通菜单项,相当于调用add_command()
)、radiobutton
(单选框,相当于调用.add_radiobutton()
)、separator
(分隔线,相当于调用add_separator()
)。
创建菜单时的coption
配置可以使用以下常用属性。
accelerator
,快捷键设置。command
,点击是要执行的函数。label
,菜单文字内容。image
,菜单图片内容。menu
,子菜单内容。variable
,复选框和单选框使用的控制变量设置。
对于macOS来说,菜单一般是显示在顶级窗口上的,也就是桌面顶部的共享菜单栏。这种需求下,可以将菜单的parent
设置为顶级窗口,即调用.winfo_toplevel()
的返回结果。Windows和Linux中使用这样设置菜单列表,可以获得应用全局菜单栏。