2013-01-24 25 views
4

所以,這裏是我有的代碼,當我運行它時,滑動條的值出現在滑塊上方,我想知道是否有辦法獲得該值?也許讓a =那個值。 )如何從Tkinter Slider(「Scale」)中獲得價值?

from Tkinter import * 

control=Tk() 
control.title("Control") 
control.geometry("350x200+100+50") 
cline0=Label(text="").pack() 
cline1=Label(text="Speed").pack() 
cline3=Scale 
(control,orient=HORIZONTAL,length=300,width=20,sliderlength=10,from_=0,to=1000,tickinterval=100).pack() 
cline4=Label(text="").pack() 

control.mainloop() 

回答

4

調用.get()方法在滑塊讀取當前值:

print cline3.get() 

參見Tkinter Scale widget文檔。

10

要獲取修改後的值,請將函數與參數command關聯。該函數將接收當前值,因此您只需使用它。還要注意,在你的代碼中你有cline3 = Scale(...).pack()cline3在這種情況下始終爲無,因爲這是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() 
+0

很好,謝謝ANS還怎麼「VAL」的值賦給一個變量,因爲我在做這在我的程序的速度控制欄,我需要用一個變量(「速度」)在我的程序的其他部分val的值。非常感謝您的寶貴時間。 – user2006082

+0

看來在這種情況下,你只是想調用'scale.get()'。或者,只要修改了縮放窗口小部件的值,您是否想在其他位置修改值?在這種情況下,在'print_value'函數中,您可以完全做到這一點。我需要了解有關當前問題的更多詳情以進一步幫助。 – mmgp