Tkinter 缩放条



Scale 小部件提供了一个图形滑块对象,允许您从特定刻度中选择值。

语法

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

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

参数

  • master − 表示父窗口。

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

序号 选项 & 描述
1

activebackground

鼠标悬停在缩放条上时的背景颜色。

2

bg

小部件在槽之外部分的背景颜色。

3

bd

槽和滑块周围的 3D 边框宽度。默认为 2 像素。

4

command

每次移动滑块时要调用的过程。此过程将传递一个参数,即新的刻度值。如果滑块快速移动,您可能不会收到每个可能位置的回调,但当它稳定下来时,您肯定会收到回调。

5

cursor

如果将此选项设置为光标名称(箭头、点等),则当鼠标悬停在缩放条上时,鼠标光标将更改为该图案。

6

digits

程序读取缩放条小部件中显示的当前值的方式是通过控制变量。缩放条的控制变量可以是 IntVar、DoubleVar(浮点数)或 StringVar。如果它是字符串变量,则 digits 选项控制将数字缩放值转换为字符串时使用的位数。

7

font

用于标签和注释的字体。

8

fg

用于标签和注释的文本颜色。

9

from_

定义缩放条范围一端的浮点数或整数。

10

highlightbackground

当滑块未获得焦点时,焦点高亮的色彩。

11

highlightcolor

当滑块获得焦点时,焦点高亮的色彩。

12

label

通过将此选项设置为标签的文本,可以在滑块部件中显示一个标签。如果滑块是水平的,标签将出现在左上角;如果滑块是垂直的,则出现在右上角。默认情况下不显示标签。

13

length

滑块部件的长度。如果滑块是水平的,则为 x 轴方向的长度;如果滑块是垂直的,则为 y 轴方向的长度。默认值为 100 像素。

14

orient

如果希望滑块沿 x 轴方向延伸,则设置 orient=HORIZONTAL;如果希望滑块平行于 y 轴延伸,则设置 orient=VERTICAL。默认为水平方向。

15

relief

指定标签周围装饰边框的外观。默认值为 FLAT;有关其他值,请参阅。

16

repeatdelay

此选项控制按钮 1 在滑块槽中被按下多长时间后,滑块才会开始沿该方向重复移动。默认值为 repeatdelay=300,单位为毫秒。

17

resolution

通常,用户只能以整数单位更改滑块的值。将此选项设置为其他值以更改滑块值的最小的增量。例如,如果 from_=-1.0 且 to=1.0,并且您将 resolution 设置为 0.5,则滑块将有 5 个可能的值:-1.0、-0.5、0.0、+0.5 和 +1.0。

18

showvalue

通常,滑块会以文本形式显示滑块的当前值(水平滑块上方,垂直滑块左侧)。将此选项设置为 0 可隐藏该标签。

19

sliderlength

通常,滑块在滑块长度上的长度为 30 像素。您可以通过将 sliderlength 选项设置为所需的长度来更改该长度。

20

state

通常,滑块部件会响应鼠标事件,并且当它们获得焦点时,也会响应键盘事件。将 state 设置为 DISABLED 以使部件无法响应。

21

takefocus

通常,焦点将在滑块部件之间循环。如果您不希望此行为,请将此选项设置为 0。

22

tickinterval

要显示周期性的滑块值,请将此选项设置为一个数字,并且将在该值的倍数处显示刻度。例如,如果 from_=0.0、to=1.0 且 tickinterval=0.25,则将在 0.0、0.25、0.50、0.75 和 1.00 的值处沿滑块显示标签。如果滑块是水平的,这些标签将出现在滑块下方;如果滑块是垂直的,则出现在其左侧。默认值为 0,这将隐藏刻度的显示。

23

to

一个浮点数或整数,定义滑块范围的一端;另一端由上面讨论的 from_ 选项定义。to 值可以大于或小于 from_ 值。对于垂直滑块,to 值定义滑块的底部;对于水平滑块,定义右侧。

24

troughcolor

滑块槽的色彩。

25

variable

此滑块的控制变量(如果有)。控制变量可以来自 IntVar、DoubleVar(浮点数)或 StringVar 类。在后一种情况下,数值将转换为字符串。

26

width

部件槽部分的宽度。对于垂直滑块,这是 x 轴方向的长度;如果滑块的 orient=HORIZONTAL,则为 y 轴方向的长度。默认值为 15 像素。

方法

Scale 对象具有以下方法:

序号 方法和描述
1

get()

此方法返回滑块的当前值。

2

set ( value )

设置滑块的值。

示例

自己尝试以下示例:

from tkinter import *
def sel():
   selection = "Value = " + str(var.get())
   label.config(text = selection)

root = Tk()
var = DoubleVar()
scale = Scale( root, variable = var )
scale.pack(anchor=CENTER)

button = Button(root, text="Get Scale Value", command=sel)
button.pack(anchor=CENTER)

label = Label(root)
label.pack()

root.mainloop()

执行以上代码后,将产生以下结果:

tkinter scale
python_gui_programming.htm
广告