当分辨率高于1时,如何从Scale中获取浮点值?如果将分辨率设置为1以下(例如0.9),则“缩放”将产生浮点数。高于1,我所能得到的就是整数。
示例代码:
from tkinter import *
root = Tk()
var = DoubleVar()
scale = Scale(root, variable=var, resolution=3.4)
scale.pack()
label = Label(root, textvariable=var)
label.pack()
root.mainloop()
我在Windows 7上使用64位Python 3.4.1。
DoubleVar()
不允许控制(Scale()
小数位数深度的)UI表示(可视部分),而模型部分保持正确(尽管隐藏,但可能会通过检查aScaleINSTANCE.get()
)。
from tkinter import * # python 3+
root = Tk()
varAsTxt = StringVar() # an MVC-trick an indirect value-holder
aScale = Scale( root,
variable = varAsTxt, # MVC-Model-Part value holder
from_ = -10.0, # MVC-Model-Part value-min-limit
to = 10.0, # MVC-Model-Part value-max-limit
length = 600, # MVC-Visual-Part layout geometry [px]
digits = 4, # MVC-Visual-Part presentation trick
resolution = 0.23 # MVC-Controller-Part stepping
)
aScale.pack()
root.lift()
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句