Tkinter 菜单按钮
菜单按钮是始终保留在屏幕上的下拉菜单的一部分。每个菜单按钮都与一个Menu部件关联,在用户点击它时可以显示该菜单按钮的选项。
语法
以下是创建此部件的简单语法-
w = Menubutton ( master, option, ... )
参数
- master − 这代表父窗口。
-
options − 这是用于该小部件的最常用选项的列表。这些选项可以用逗号分隔的键值对形式使用。
序号 | 选项和描述 |
---|---|
1 | activebackground 当鼠标悬停在菜单按钮上时的背景色。 |
2 | activeforeground 当鼠标悬停在菜单按钮上时的前景色。 |
3 | anchor 如果部件的空间大于文本所需的空间,此选项控制文本的位置。默认值为anchor=CENTER,将文本居中。 |
4 | bg 在标签和指示器后显示的正常背景色。 |
5 | bitmap 要在菜单按钮上显示位图,请将此选项设置为位图名称。 |
6 | bd 指示器周围的边框大小。默认为2像素。 |
7 | cursor 鼠标悬停在此菜单按钮上时显示的光标。 |
8 | direction 使用direction=LEFT将菜单显示在按钮左侧;使用direction=RIGHT将菜单显示在按钮右侧;或使用direction=’above’将菜单放置在按钮上方。 |
9 | disabledforeground 当该菜单按钮禁用时显示的前景色。 |
10 | fg 鼠标不在菜单按钮上时的前景色。 |
11 | height 菜单按钮的文字行数(而不是像素)的高度。默认是根据菜单按钮的内容调整大小。 |
12 | highlightcolor 当小部件有焦点时,焦点高亮显示的颜色。 |
13 | image 显示在这个菜单按钮上的图像, |
14 | justify 当文本不能填满菜单按钮时,该选项控制文本的位置:使用justify=LEFT将文本左对齐(这是默认值);使用justify=CENTER将文本居中,或者justify=RIGHT将文本右对齐。 |
15 | menu 要将菜单按钮与一组选择关联起来,将此选项设置为包含这些选择的Menu对象。该菜单对象必须是通过将关联的菜单按钮作为其第一个参数传递给构造函数创建的。 |
16 | padx 设置菜单按钮文本左右两侧的间距。默认为1。 |
17 | pady 设置菜单按钮文本上下两侧的间距。默认为1。 |
18 | relief 选择三维边框阴影效果。默认为RAISED。 |
19 | state 通常,菜单按钮会响应鼠标事件。设置state=DISABLED可以使菜单按钮变灰并且不响应事件。 |
20 | text 设置菜单按钮上的文本。将此选项设置为所需文本的字符串。字符串内的换行符(“\n”)将会引起换行。 |
21 | textvariable 您可以将一个StringVar类型的控制变量与菜单按钮关联起来。设置控制变量的值将会改变显示的文本。 |
22 | underline 通常,menubutton上的文本下面不会出现下划线。要在其中一个字符下划线,将此选项设置为该字符的索引。 |
23 | width 小部件在字符中的宽度。默认值为20。 |
24 | wraplength 通常不会换行。您可以将此选项设置为一定数量的字符,所有行都将被分成不超过该数字的片段。 |
示例
自己尝试以下示例 –
from tkinter import *
import tkinter
top = Tk()
mb= Menubutton ( top, text="condiments", relief=RAISED )
mb.grid()
mb.menu = Menu ( mb, tearoff = 0 )
mb["menu"] = mb.menu
mayoVar = IntVar()
ketchVar = IntVar()
mb.menu.add_checkbutton (label="mayo", variable=mayoVar)
mb.menu.add_checkbutton (label="ketchup", variable=ketchVar)
mb.pack()
top.mainloop()
当上述代码被执行时,它会产生以下 输出 –