Python Tkinter刻度
刻度小部件用于在Python应用程序中实现图形滑块,使用户可以在滑块上滑动并选择其中一个值。
我们可以控制刻度的最小值和最大值,以及刻度的分辨率。当用户被强制从给定的值范围中只选择一个值时,它提供了Entry小部件的替代方法。
使用刻度小部件的语法如下所示。
语法
w = Scale(top, options)
以下是可能的选项列表。
SN | Option | Description |
---|---|---|
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 | 此选项告诉按钮在滑块开始重复在某个方向上移动之前需要按住的持续时间。默认为 300 毫秒。 |
17 | resolution | 它被设置为所需进行比例缩放的最小变化量。 |
18 | showvalue | 默认情况下,比例缩放的值以文本形式显示。我们可以将此选项设置为0以隐藏标签。 |
19 | sliderlength | 它表示沿比例缩放长度的滑块窗口的长度。默认值为30个像素。但是,我们可以将其更改为合适的值。 |
20 | state | 默认情况下,比例缩放部件是活动的。我们可以将其设置为DISABLED使其不响应。 |
21 | takefocus | 默认情况下,焦点将循环移至比例缩放部件。如果不希望发生这种情况,可以将此选项设置为0。 |
22 | tickinterval | 刻度值显示为指定刻度间隔的倍数。tickinterval 的默认值为 0。 |
23 | to | 表示范围的另一端的浮点或整数值。 |
24 | troughcolor | 表示滑道的颜色。 |
25 | variable | 表示滑动条的控制变量。 |
26 | width | 表示小部件的滑道部分的宽度。 |
方法
SN | 方法 | 描述 |
---|---|---|
1 | get() | 它用于获取刻度的当前值。 |
2 | set(value) | 它用于设置刻度的值。 |
示例
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()
输出: