Tkinter教程, Scale widget用来实现python应用程序的图形滑动条,这样用户就可以在滑动条上显示的数值范围内滑动,并在其中选择一个。
我们可以控制最小值和最大值,以及刻度的分辨率。当用户被迫从给定的数值范围中只选择一个数值时,它提供了一个替代Entry部件的方法。
使用滑动条小组件的语法如下。
Python Tkinter 滑动条 语法
w = Scale(top, options)
下面列出了可能的选项清单。
SN | 选项 | 描述 |
---|---|---|
1 | activebackground | 小组件拥有焦点时的背景颜色。 |
2 | bg | 小部件的背景颜色。 |
3 | bd | 小组件的边界大小。默认是2像素。 |
4 | command | 它被设置为每次移动滑块时被调用的程序。如果滑块被快速移动,回调将在它稳定后完成。 |
5 | cursor | 鼠标指针被改变为分配给这个选项的光标类型。它可以是一个箭头,点,等等。 |
6 | digits | 如果用于控制刻度数据的控制变量是字符串类型,该选项用于指定数字刻度转换为字符串时的位数。 |
7 | font | 小部件文本的字体类型。 |
8 | fg | 文本的前景颜色。 |
9 | from_ | 它被用来代表小部件范围的一端。 |
10 | highlightbackground | 当小组件没有焦点时的高亮颜色。 |
11 | highlighcolor | 小组件拥有焦点时的高亮颜色。 |
12 | label | 这可以被设置为一些文本,可以作为标签与刻度一起显示。如果刻度是水平的,它显示在左上角;如果刻度是垂直的,它显示在右上角。 |
13 | length | 它代表小部件的长度。如果比例是水平的,它代表X尺寸,如果比例是垂直的,它代表Y尺寸。 |
14 | orient | 它可以被设置为水平或垂直,这取决于衡器的类型。 |
15 | relief | 它表示边框的类型。默认是FLAT。 |
16 | repeatdelay | 这个选项告诉人们,在滑块开始向该方向重复移动之前,要按下按钮的时间。默认是300ms。 |
17 | resolution | 它被设置为要对刻度值进行的最小变化。 |
18 | showvalue | 默认情况下,刻度的值会显示在文本表格中。我们可以把这个选项设置为0来抑制标签。 |
19 | sliderlength | 它表示滑块窗口沿刻度长度的长度。默认是30像素。然而,我们可以把它改成适当的值。 |
20 | state | 滑动条小部件默认是激活的。我们可以将其设置为DISABLED,使其没有反应。 |
21 | takefocus | 默认情况下,焦点会在刻度小部件中循环。如果我们不希望发生这种情况,我们可以把这个选项设置为0。 |
22 | tickinterval | 刻度值在指定的tickinterval的倍数上显示。tickinterval的默认值是0。 |
23 | to | 它代表一个浮点数或整数值,指定刻度所代表的范围的另一端。 |
24 | troughcolor | 它代表通过的颜色。 |
25 | variable | 它代表滑动条的控制变量。 |
26 | width | 它表示小部件的通过部分的宽度。 |
Python Tkinter 滑动条 方法
SN | 方法 | 描述 |
---|---|---|
1 | get() | 它用于获得滑动条的当前值。 |
2 | set(value) | 它用于设置滑动条的值。 |
Python Tkinter 滑动条 示例
from tkinter import *
def select():
sel = "Value = " + str(v.get())
label.config(text = sel)
top = Tk()
top.geometry("200x100")
v = DoubleVar()
scale = Scale( top, variable = v, from_ = 1, to = 50, orient = HORIZONTAL)
scale.pack(anchor=CENTER)
btn = Button(top, text="Value", command=select)
btn.pack(anchor=CENTER)
label = Label(top)
label.pack()
top.mainloop()
输出: