Scale
“缩放”小组件提供了一个图形滑块对象,允许您从特定比例中选择值。
语法 (Syntax)
以下是创建此小部件的简单语法 -
w = Scale ( master, option, ... )
参数 (Parameters)
master - 这表示父窗口。
options - 以下是此小部件最常用的选项列表。 这些选项可用作以逗号分隔的键值对。
Sr.No. | 选项和说明 |
---|---|
1 | activebackground 鼠标悬停在刻度上时的背景颜色。 |
2 | bg 窗口小部件外部的背景颜色。 |
3 | bd 槽和滑块周围3-d边界的宽度。 默认值为2像素。 |
4 | command 每次移动滑块时调用的过程。 此过程将传递一个参数,即新的缩放值。 如果滑块快速移动,您可能无法获得每个可能位置的回调,但在结算时肯定会收到回调。 |
5 | cursor 如果将此选项设置为光标名称( arrow, dot etc. ),则当鼠标光标超出比例时,鼠标光标将更改为该模式。 |
6 | digits 程序读取缩放小部件中显示的当前值的方式是通过控制变量。 比例的控制变量可以是IntVar,DoubleVar(float)或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轴,则设置为= VERTICAL。 默认为水平。 |
15 | relief 指定标签周围的装饰边框的外观。 默认值为FLAT; 对于其他价值观。 |
16 | repeatdelay 此选项控制滑块开始在该方向上重复移动之前按钮1在槽中按下的时间长度。 默认值为repeatdelay = 300,单位为毫秒。 |
17 | resolution 通常,用户只能在整个单位中更改比例。 将此选项设置为其他值以更改比例值的最小增量。 例如,如果从_ = - 1.0和= 1.0,并且您设置分辨率= 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(float)或StringVar。 在后一种情况下,数值将转换为字符串。 |
26 | width 小部件的谷部分的宽度。 如果刻度具有orient = HORIZONTAL,则这是垂直刻度的x维度和y维度。 默认值为15像素。 |
方法 (Methods)
Scale对象有这些方法 -
Sr.No. | 方法和描述 |
---|---|
1 | get() 此方法返回比例的当前值。 |
2 | set ( value ) 设置比例的值。 |
例子 (Example)
请亲自尝试以下示例 -
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()
执行上述代码时,会产生以下结果 -