Python Tkinter 菜单

2025年3月17日 | 阅读 3 分钟

菜单小部件用于在 Python 应用程序中创建各种类型的菜单(顶级、下拉和弹出)。

顶级菜单是指显示在父窗口标题栏正下方的菜单。我们需要创建菜单小部件的新实例,并使用 add() 方法向其添加各种命令。

使用菜单小部件的语法如下。

语法

可能的选项列表如下。

序号选项描述
1activebackground(激活背景)小部件获得焦点时的背景颜色。
2activeborderwidth鼠标悬停在小部件上时,小部件边框的宽度。默认值为 1 像素。
3activeforeground小部件获得焦点时,小部件的字体颜色。
4bg小部件的背景颜色。
5bd小部件的边框宽度。
6光标鼠标悬停在小部件上时,鼠标指针会更改为光标类型。光标类型可以设置为箭头或点。
7disabledforeground小部件禁用时,小部件的字体颜色。
8font小部件文本的字体类型。
9fg小部件的前景色。
10postcommandpostcommand 可以设置为当鼠标悬停在菜单上时调用的任何函数。
11relief小部件边框的类型。默认类型为 RAISED。
12图片它用于在菜单上显示图像。
13selectcolor用于在选中复选框或单选按钮时显示它们的颜色。
14tearoff默认情况下,菜单中的选项从位置 1 开始。如果我们将 tearoff = 1,则它将从位置 0 开始。
15title如果要更改窗口的标题,请将此选项设置为窗口的标题。

方法

菜单小部件包含以下方法。

序号选项描述
1add_command(options)它用于向菜单添加菜单项。
2add_radiobutton(options)此方法将单选按钮添加到菜单中。
3add_checkbutton(options)此方法用于向菜单添加复选框。
4add_cascade(options)它用于通过将给定菜单与父菜单关联来创建父菜单的分层菜单。
5add_seperator()它用于向菜单添加分隔线。
6add(type, options)它用于向菜单添加特定的菜单项。
7delete(startindex, endindex)它用于删除指定范围内的菜单项。
8entryconfig(index, options)它用于配置由给定索引标识的菜单项。
9index(item)它用于获取指定菜单项的索引。
10insert_seperator(index)它用于在指定索引处插入分隔符。
11invoke(index)它用于调用与指定索引处给出的选择相关联的函数。
12type(index)它用于获取由索引指定的选择的类型。

创建顶级菜单

可以通过实例化菜单小部件并将菜单项添加到菜单来创建顶级菜单。

示例 1

输出

Python Tkinter Menu

单击“hello”菜单按钮将在控制台上打印“hello”,而单击“Quit”菜单按钮将退出 Python 应用程序。

示例 2

输出

Python Tkinter Menu