Tkinter 滑块

Tkinter 滑块

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

语法

下面是创建此部件的简单语法 –

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

参数

  • master − 这表示父窗口。

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

序号 选项和描述
1 activebackground 当鼠标悬停在刻度上时的背景颜色。
2 bg 尺度部件外部的背景颜色。
3 bd 在尺度和滑块周围的3D边框的宽度。默认为2像素。
4 command 每次滑块移动时调用的过程。此过程将传递一个参数,即新的比例值。如果滑块移动得很快,您可能无法获得每个可能的位置的回调,但当它稳定下来时,您肯定会得到一个回调。
5 cursor 如果将此选项设置为光标名称(arrow,dot等),当光标悬停在刻度上时,鼠标光标将更改为该模式。
6 digits 控制变量是程序读取“scale”部件当前显示值的方式。“scale”的控制变量可以为IntVar,DoubleVar(浮点数)或StringVar。如果是字符串变量,则“digits”选项控制将数字“scale”值转换为字符串时使用的位数。
7 font 标签和注释所使用的字体。
8 fg 标签和注释文本的颜色。
9 from_ 浮点数或整数值,定义“scale”范围的一端。
10 highlightbackground 当“scale”没有焦点时,焦点高亮的颜色。
11 highlightcolor 当滑块获取焦点时,焦点高亮的颜色。
12 label 通过将此选项设置为标签的文本,您可以在刻度部件中显示一个标签。如果刻度是水平的,则标签显示在左上角;如果是垂直的,则显示在右上角。默认没有标签。
13 length 刻度部件的长度。如果刻度是水平的,则长度是x轴的维度;如果是垂直的,则是y轴的维度。默认为100个像素。
14 orient 如果您希望刻度沿着x轴运行,请设置orient=HORIZONTAL;如果希望沿y轴平行运行,请设置orient=VERTICAL。默认为水平方向。
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 控制这个scale的变量,如果有的话。控制变量可以是IntVar、DoubleVar(浮点数)或者StringVar的实例。在后一种情况下,数值将会被转换为字符串。
26 width 控件的槽的宽度。对于垂直scale来说,这是x方向的尺寸,如果scale的orient=HORIZONTAL,则是y方向的尺寸。默认为15像素。

方法

比例对象有以下方法:

序号 方法 & 描述
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 滑块

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程