当前位置: 首页 > 文档资料 > Python 中文教程 >

Menubutton

优质
小牛编辑
134浏览
2023-12-01

menubutton是下拉菜单的一部分,一直停留在屏幕上。 每个menubutton都与一个Menu小部件相关联,该小部件可以在用户点击它时显示该menubutton的选项。

语法 (Syntax)

以下是创建此小部件的简单语法 -

w = Menubutton ( master, option, ... )

参数 (Parameters)

  • master - 这表示父窗口。

  • options - 以下是此小部件最常用的选项列表。 这些选项可用作以逗号分隔的键值对。

Sr.No.选项和说明
1

activebackground

当鼠标位于menubutton上方时的背景颜色。

2

activeforeground

鼠标悬停在menubutton上时的前景色。

3

anchor

如果窗口小部件具有比文本需要更多的空间,则此选项控制文本的放置位置。 默认值为anchor = CENTER,它使文本居中。

4

bg

标签和指示器后面显示的正常背景颜色。

5

bitmap

要在menubutton上显示位图,请将此选项设置为位图名称。

6

bd

指标周围边框的大小。 默认值为2像素。

7

cursor

鼠标悬停在此menubutton上时出现的光标。

8

direction

设置direction = LEFT以显示按钮左侧的菜单; 使用direction = RIGHT显示按钮右侧的菜单; 或使用direction ='above'将菜单放在按钮上方。

9

disabledforeground

禁用时,此menubutton上显示的前景色。

10

fg

当鼠标不在menubutton上时的前景色。

11

height

menubutton在文本行中的高度(不是像素!)。 默认设置是将menubutton的大小与其内容相匹配。

12

highlightcolor

当窗口小部件具有焦点时,焦点中显示的颜色突出显示。

13

image

要在此menubutton上显示图像,

14

justify

当文本未填充menubutton时,此选项控制文本所在的位置:use justify = LEFT左对齐文本(这是默认值); 使用justify = CENTER使其居中,或者使用justify = RIGHT来右对齐。

15

menu

要将menubutton与一组选项相关联,请将此选项设置为包含这些选项的Menu对象。 必须通过将关联的menubutton作为其第一个参数传递给构造函数来创建该菜单对象。

16

padx

在menubutton文本的左侧和右侧留出多少空间。 默认值为1。

17

pady

在menubutton文本的上方和下方留出多少空间。 默认值为1。

18

relief

选择三维边框着色效果。 默认为RAI​​SED。

19

state

通常,menubutton对小鼠有反应。 设置state = DISABLED以使menubutton变灰并使其无响应。

20

text

要在menubutton上显示文本,请将此选项设置为包含所需文本的字符串。 字符串中的换行符(“\ n”)将导致换行符。

21

textvariable

您可以将StringVar类的控件变量与此menubutton相关联。 设置该控制变量将更改显示的文本。

22

underline

通常情况下,menubutton上的文字下没有下划线。 要为其中一个字符加下划线,请将此选项设置为该字符的索引。

23

width

小部件的宽度(以字符为单位)。 默认值为20。

24

wraplength

通常情况下,线条不会被包裹。 您可以将此选项设置为多个字符,并且所有行将被分成不超过该数字的片段。

例子 (Example)

请亲自尝试以下示例 -

from Tkinter import *
import tkMessageBox
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()

执行上述代码时,会产生以下结果 -

TK Menubutton