ttk.Widget 定义了Tk主题小部件支持的标准选项和方法,不应该直接实例化。

通用属性

所有ttk小部件接受以下选项:

属性 描述
class 指定窗口类。在查询窗口其他选项的选项数据库时使用该类,以确定窗口的默认绑定标签,并选择小部件的默认布局和样式。此选项是只读的,只能在创建窗口时指定。
cursor 指定用于小部件的鼠标光标。如果设置为空字符串 (默认值),则为父小部件继承游标。
takefocus 确定在键盘遍历期间窗口是否接受焦点。0、1或返回空字符串。如果返回0,则意味着在键盘遍历期间应完全跳过该窗口。如果为1,则意味着只要窗口可见,它就应该接收输入焦点。空字符串意味着遍历脚本决定是否关注窗口。
style 可用于指定自定义小部件样式。

可滚动小部件所共有的属性

滚动条控制的小部件支持以下选项。

Option Description
xscrollcommand 用于与水平滚动条通信。
当窗口的视图发生变化时,窗口将基于scrollcommand生成Tcl命令。
通常,此选项由某些滚动条的方法Scrollbar.set() 组成。这将导致每当窗口中的视图发生更改时,滚动条就会更新。
yscrollcommand 用于与垂直滚动条通信。有关更多信息,请参见上文。

标签选项

标签、按钮和其他类似按钮的小部件支持以下选项。

Option Description
text 指定要在小部件中显示的文本字符串。
textvariable 指定将使用其值代替text选项资源的名称。
underline 如果设置,则指定要在文本字符串中下划线的字符的索引 (从0开始)。下划线字符用于记忆激活。
image 指定要显示的图像。这是1个或多个元素的列表。第一个元素是默认图像名称。列表的其余部分 (如果按样式定义的statinstance/value对序列)。map(),指定小部件处于特定状态或状态组合时要使用的不同图像。列表中的所有图像应具有相同的大小。
compound 指定在文本和图像选项都存在的情况下,如何相对于文本显示图像。有效值为:
- text: 仅显示文本
  • image: 仅显示显示图像

  • top, bottom, left, right: 分别显示文本上方、下方、左侧或右侧的图像。

  • none: 默认值。显示图像 (如果存在),否则显示文本。
    | | width | 如果大于零,则指定要为文本标签分配多少空间 (以字符宽度为单位),如果小于零,则指定最小宽度。如果为零或未指定,则使用文本标签的自然宽度。 |

兼容性选项

Option Description
state 可以设置为 “正常” 或 “禁用” 以控制 “禁用” 状态位。这是一个只写选项: 设置它会更改小部件状态,但widget.state() 方法不会影响此选项。

小部件状态

小部件状态是独立状态标志的位图。

Flag Description
active 鼠标光标位于小部件上方,按下鼠标按钮将导致某些操作发生
disabled 在程序控制下禁用小部件
focus 小部件有键盘焦点
pressed 小部件正在被按下
selected “On”, “true”, 或“current”对于诸如检查按钮和单选按钮之类的东西
background Windows和Mac有一个 “活动” 或前景窗口的概念。为背景窗口中的小部件设置背景状态,并为前景窗口中的小部件清除背景状态
readonly 小部件不应允许用户修改
alternate 特定于小部件的替代显示格式
invalid 小部件的值无效

状态规范是一系列状态名称,可选地以感叹号为前缀,指示该位已关闭。