7

所以,这是我的代码,当我运行它时,滑块的值出现在滑块上方,我想知道有没有办法得到这个值?也许让 a=那个值。;)

from Tkinter import *

control = Tk()
control.geometry("350x200+100+50")

scale = Scale(control,orient=HORIZONTAL,length=300,width=20,sliderlength=10,from_=0,to=1000,tickinterval=100)
scale.pack()

control.mainloop()
4

3 回答 3

16

要在修改后获取值,请将函数与参数关联command。此函数将接收当前值,因此您只需使用它即可。另请注意,在您的代码中,您有cline3 = Scale(...).pack(). cline3在这种情况下总是 None ,因为那是pack()返回的。

import Tkinter

def print_value(val):
    print val

root = Tkinter.Tk()

scale = Tkinter.Scale(orient='horizontal', from_=0, to=128, command=print_value)
scale.pack()

root.mainloop()
于 2013-01-24T22:10:04.477 回答
10

调用.get()滑块上的方法读取当前值:

print scale.get()

请参阅Tkinter Scale 小部件文档。

于 2013-01-24T19:56:46.473 回答
0

如果您最终解决了问题或没有给出年龄,我想知道:但是我为机器人控制做了一个类似的应用程序。声明并初始化 gui 后的基本代码,以及 scale 编程: scale(blahblahblah) Scale.grid(blahblah)

Def forward():
    motor1.forward(scale.get())
    motor2.backward(scale.get())

请记住:速度值需要 1 的百分比,因此将比例设置为:从 0 到 1,间隔为 0.01 或 .1(我使用 0.1 作为速度变量的十分之一)

于 2019-02-20T02:36:04.380 回答