Python Tkinter菜单用法介绍

本文概述

  • 方法
  • 创建顶层菜单
菜单小部件用于在python应用程序中创建各种类型的菜单(顶层, 下拉菜单和弹出菜单)。
顶层菜单是显示在父窗口标题栏正下方的菜单。我们需要创建一个菜单小部件的新实例, 并使用add()方法向其中添加各种命令。
下面给出了使用菜单小部件的语法。
句法
w = Menu(top, options)

下面列出了可能的选项。
SN Option Description
1 activebackground 当小部件位于焦点下方时, 小部件的背景颜色。
2 activeborderwidth 小部件位于鼠标下方时边框的宽度。默认值为1像素。
3 activeforeground 当小部件具有焦点时, 小部件的字体颜色。
4 bg 小部件的背景颜色。
5 bd 小部件的边框宽度。
6 cursor 当鼠标指针悬停在小部件上时, 它会更改为光标类型。光标类型可以设置为箭头或点。
7 disabledforeground 禁用时的小部件的字体颜色。
8 font 小部件文本的字体类型。
9 fg 小部件的前景色。
10 postcommand 可以将后命令设置为当鼠标悬停菜单时调用的任何函数。
11 relief 小部件的边框类型。默认类型为RAISED。
12 image 它用于在菜单上显示图像。
13 selectcolor 选择它们时用于显示复选按钮或单选按钮的颜色。
14 tearoff 默认情况下, 菜单中的选择从位置1开始。如果将撕裂设置为1, 则它将从第0位置开始。
15 title 如果要更改窗口标题, 请将此选项设置为窗口标题。
方法 菜单小部件包含以下方法。
SN Option Description
1 add_command(options) 用于将菜单项添加到菜单。
2 add_radiobutton(options) 此方法将单选按钮添加到菜单。
3 add_checkbutton(options) 此方法用于将复选按钮添加到菜单。
4 add_cascade(options) 通过将给定菜单与父菜单相关联, 可用于创建父菜单的分层菜单。
5 add_seperator() 用于将分隔线添加到菜单。
6 添加(类型, 选项) 用于将特定菜单项添加到菜单。
7 删除(startindex, endindex) 用于删除指定范围内存在的菜单项。
8 entryconfig(索引, 选项) 它用于配置由给定索引标识的菜单项。
9 index(item) 它用于获取指定菜单项的索引。
10 insert_seperator(index) 用于在指定的索引处插入分隔符。
11 invoke(index) 它用于调用与在指定索引处给定的选择相关联。
12 type(index) 它用于获取索引指定的选择类型。
创建顶层菜单 可以通过实例化Menu小部件并将菜单项添加到菜单来创建顶层菜单。
例子1
# !/usr/bin/python3from tkinter import *top = Tk()def hello():print("hello!")# create a toplevel menumenubar = Menu(root)menubar.add_command(label="Hello!", command=hello)menubar.add_command(label="Quit!", command=top.quit)# display the menutop.config(menu=menubar)top.mainloop()

输出
Python Tkinter菜单用法介绍

文章图片
单击hello Menu按钮将在控制台上打印hello, 而单击Quit Menu按钮将退出python应用程序。
例子2
from tkinter import Toplevel, Button, Tk, Menutop = Tk()menubar = Menu(top)file = Menu(menubar, tearoff=0)file.add_command(label="New")file.add_command(label="Open")file.add_command(label="Save")file.add_command(label="Save as...")file.add_command(label="Close")file.add_separator()file.add_command(label="Exit", command=top.quit)menubar.add_cascade(label="File", menu=file)edit = Menu(menubar, tearoff=0)edit.add_command(label="Undo")edit.add_separator()edit.add_command(label="Cut")edit.add_command(label="Copy")edit.add_command(label="Paste")edit.add_command(label="Delete")edit.add_command(label="Select All")menubar.add_cascade(label="Edit", menu=edit)help = Menu(menubar, tearoff=0)help.add_command(label="About")menubar.add_cascade(label="Help", menu=help)top.config(menu=menubar)top.mainloop()

【Python Tkinter菜单用法介绍】输出
Python Tkinter菜单用法介绍

文章图片

    推荐阅读