Button 控件

详细介绍了 ​​tkinter​​ 中 ​​Button​​ 控件的所有可选参数的作用。

在名为 ​​parent​​ 的顶级窗口(​​top-level window​​)或框架(​​frame​​)中创建一个按钮:

w = tk.Button(parent, option=value, ...)


构造函数返回新的 ​​Button​​ 小部件。 它的可选参数(​​option​​)包括:

参数

描述

activebackground

按钮在光标下时的背景颜色

activebackground

按钮在光标下时的前景颜色

anchor

文本在按钮上的位置。 例如,anchor=tk.NE 会将文本放置在按钮的右上角

bd 或者 borderwidth

按钮外部的边框宽度,默认是两个像素

bg 或者 background

正常状态下的背景色

bitmap

要在按钮上显示的标准位图之一的名称(而不是文本)。

command

单击按钮时要调用的函数或方法。

cursor

选择当鼠标悬停在按钮上时显示的光标

default

tk.NORMAL 是默认值; 如果按钮最初被禁用(变灰,对鼠标点击无响应),请使用 tk.DISABLED

disabledforeground

禁用按钮时使用的前景色

fg 或者 foreground

正常的前景色(文本)颜色

font

用于按钮的文本字体

height

以文本行(对于文本按钮)或像素(对于图像)为单位的按钮高度

highlightbackground

按钮有焦点时的高亮背景色

highlightcolor

控件有焦点时焦点高亮的颜色

highlightthickness

焦点高光的厚度

image

展示在按钮上的图片(而不是文字)

justify

如何显示多行文本: tk.LEFT 左对齐每一行;tk.CENTER 将它们居中; 或 tk.RIGHT 右对齐

overrelief

鼠标在按钮上时使用的浮雕样式; 默认样式是 tk.RAISED

padx

文本左侧和右侧的附加填充

pady

文本上侧和下册的附加填充

relief

指定按钮的浮雕类型。默认浮雕tk.RAISED

repeatdelay

请参阅下面的​​repeatinterval​

repeatinterval

通常,当用户释放鼠标按钮时,按钮只会触发一次。如果您希望按钮在按住鼠标按钮时按固定间隔触发,请将此选项设置为要在重复之间使用的毫秒数,并将 repeatdelay 设置为在开始重复之前等待的毫秒数。例如,如果您指定“ repeatdelay=500, repeatinterval=100”按钮将在半秒后触发,此后每十分之一秒触发一次,直到用户释放鼠标按钮。 如果用户没有按住鼠标按钮至少 repeatdelay 毫秒,按钮将正常触发。

state

将此选项设置为 tk.DISABLED 以使按钮变灰并使其无响应。 当鼠标悬停在其上方时,其值为 tk.ACTIVE。 默认值为 tk.NORMAL

takefocus

通常,键盘焦点会访问按钮,空格字符的作用与鼠标单击相同,“按下”按钮。 您可以将 takefocus 选项设置为零以防止焦点访问按钮

text

按钮上显示的文本。 使用内部换行符显示多个文本行

textvariable

与此按钮上的文本相关联的 StringVar() 实例。 如果变量更改,新值将显示在按钮上

underline

默认值为 -1,这意味着按钮上的文本字符将不带有下划线。 如果非负,相应的文本字符将被划线。 例如,underline=1 将在按钮文本的第二个字符下划线。

width

以字母(如果显示文本)或像素(如果显示图像)为单位的按钮宽度

wraplength

如果此值设置为正数,文本行将被换行以适应此长度

按钮对象的方法:

.flash()

使按钮在活动颜色和正常颜色之间闪烁几次。 使按钮保持原来的状态。 如果按钮被禁用,则忽略。

.invoke()

调用按钮的命令回调,并返回该函数返回的内容。 如果按钮被禁用或没有回调,则无效