Tk - Menu 菜单小部件

Tk 菜单小部件与 Tk 小部件菜单按钮一起使用。 所以,我们首先会看到菜单按钮。 菜单按钮小部件的语法如下所示 −

menubutton menubuttonName options

菜单按钮选项

下表列出了菜单按钮小部件的可用选项 −

序号 语法和描述
1

-command action

设置按钮的命令操作。

2

-text text

设置小部件的文本。

3

-textvariable varName

与小部件关联的变量。 当小部件的文本更改时,该变量将设置为小部件的文本。

4

-width number

设置小部件的宽度。

5

-menu menuName

指定关联菜单小部件的名称。

6

-underline charPosition

设置热键的位置。

菜单的语法如下所示 −

menu menuName options

菜单选项

下表列出了菜单小部件的可用选项 −

序号 语法和描述
1

-font fontDescriptor

用于设置小部件的字体。

2

-postcommand action

设置在发布菜单之前要执行的命令操作。

3

-menu menuName

指定关联菜单小部件的名称。

4

-tearoff boolean

允许或禁止从菜单按钮中删除菜单并在永久窗口中显示。 默认启用。

添加菜单按钮的语法如下所示 −

menuName add type menubuttonType options

类型包括分隔符、级联、复选按钮、单选按钮和命令。

菜单名称添加选项

下表列出了可用于 menuName 添加的选项 −

序号 语法和描述
1

-command action

设置菜单按钮的命令操作。

2

-menu menuName

指定关联菜单小部件的名称。

3

-label string

设置菜单的文本。

4

-variable varName

设置选择此条目时要设置的变量。

5

-value string

已为变量设置值。

6

-underline position

设置热键的位置。

一个简单的 Tk 菜单如下所示 −

#!/usr/bin/wish

menubutton .myMenubutton -menu .myMenubutton.myMenu -text "ChangeText"
menu .myMenubutton.myMenu
.myMenubutton.myMenu add command -label Hello -command {set myvariable "Hello"}
.myMenubutton.myMenu add command -label World -command {set myvariable "World"}
pack .myMenubutton
pack [label .myLabel  -text "Select An option" -font {Helvetica -18 bold} -height 5
   -width 15 -textvariable myvariable]

当我们运行上面的程序时,我们将得到以下输出 −

菜单示例

当我们选择菜单选项时,我们将得到如下所示的输出 −

选定的菜单示例

tk_selection_widgets.html