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

通常,菜单按钮上的文本下方不会出现下划线。要对其中一个字符添加下划线,请将此选项设置为该字符的索引。

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()

执行上述代码后,将生成以下输出 -

tkinter menubutton
python_gui_programming.htm
广告