首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何从Tkinter Slider ("Scale")中获取价值?

如何从Tkinter Slider ("Scale")中获取价值?
EN

Stack Overflow用户
提问于 2013-01-25 03:00:29
回答 3查看 35.9K关注 0票数 7

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

代码语言:javascript
复制
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()
EN

回答 3

Stack Overflow用户

发布于 2013-01-25 06:10:04

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

代码语言:javascript
复制
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()
票数 16
EN

Stack Overflow用户

发布于 2013-01-25 03:56:46

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

代码语言:javascript
复制
print scale.get()

请参阅Tkinter Scale widget文档。

票数 10
EN

Stack Overflow用户

发布于 2019-02-20 10:36:04

Idk如果你最终解决了或者没有给定年龄:但我做了一个类似的机器人控制应用程序。声明和初始化gui之后的基本代码,以及scale编程: scale(blahblahblah) Scale.grid(blahblah)

代码语言:javascript
复制
Def forward():
    motor1.forward(scale.get())
    motor2.backward(scale.get())

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14508727

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档