Python Tkinter – 菜单

Tkinter教程, 菜单部件用于在python应用程序中创建各种类型的菜单(顶层、下拉和弹出)。
顶层菜单是在父窗口的标题栏下显示的菜单。我们需要创建一个新的Menu widget实例,并通过使用add()方法向其添加各种命令。
使用菜单部件的语法如下。

Python Tkinter 菜单 语法

w = Menu(top, options) 

下面列出了可能的选项清单。

SN 选项 描述
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 如果你想改变窗口的标题,把这个选项设置为窗口的标题。

Python Tkinter 菜单 方法

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

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

Python Tkinter 菜单 创建一个顶层菜单

通过实例化菜单部件并将菜单项目添加到菜单中,可以创建一个顶层菜单。

Python Tkinter 菜单 示例1

# !/usr/bin/python3

from tkinter import *

top = Tk()

def hello():
    print("hello!")

# create a toplevel menu
menubar = Menu(root)
menubar.add_command(label="Hello!", command=hello)
menubar.add_command(label="Quit!", command=top.quit)

# display the menu
top.config(menu=menubar)

top.mainloop()

输出:

Python Tkinter 菜单
点击hello Menubutton将在控制台打印hello,而点击Quit Menubutton将退出python应用程序。

Python Tkinter 菜单 示例2

from tkinter import Toplevel, Button, Tk, Menu

top = 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 菜单

赞(1)
未经允许不得转载:极客笔记 » Python Tkinter – 菜单

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址