zoukankan      html  css  js  c++  java
  • Tkinter教程之Scale篇

    本文转载自:http://blog.csdn.net/jcodeer/article/details/1811313

    '''Tkinter教程之Scale篇'''
    #Scale为输出限定范围的数字区间,可以为之指定最大值,最小值及步距值
    '''1.创建一个Scale'''
    from Tkinter import *
    root = Tk()
    Scale(root).pack()
    root.mainloop()
    #创建一个垂直Scale,最大值为100,最小值为0,步距值为1。这个参数设置也就是Scale的缺省设置了。
    '''2.改变这三个参数,生成 一个水平Scale,最小值为-500,最大值为500,步距值为5'''
    # -*- coding: cp936 -*-
    from Tkinter import *
    root = Tk()
    Scale(root,
          from_ = -500,         #设置最大值
          to = 500,             #设置最小值
          resolution = 5,       #设置步距值
          orient = HORIZONTAL   #设置水平方向
          ).pack()
    root.mainloop()
    #注意from_的使用方式,在其后添加了"_",避免与关键字from的冲突

    '''3.Scale绑定变量'''
    # -*- coding: cp936 -*-
    from Tkinter import *
    root = Tk()
    v = StringVar()
    Scale(root,
          from_ = 0,         #设置最小值
          to = 100.0,             #设置最大值
          resolution = 0.0001,       #设置步距值
          orient = HORIZONTAL,  #设置水平方向
          variable = v          #绑定变量
          ).pack()
    print v.get()
    root.mainloop()
    #v的值与Scale的值一致
    '''4.使用回调函数打印当前的值'''
    # -*- coding: cp936 -*-
    from Tkinter import *

    root = Tk()
    def printScale(text):
        print 'text = ',text
        print 'v = ',v.get()
    v = StringVar()
    Scale(root,
          from_ = 0,                #设置最小值
          to = 100.0,               #设置最大值
          resolution = 0.0001,      #设置步距值
          orient = HORIZONTAL,      #设置水平方向
          variable = v,             #绑定变量
          command = printScale      #设置回调函数
          ).pack()
    print v.get()
    root.mainloop()
    #这个回调函数有一个参数,这个值是当前的Scale的值,每移动一个步距就会调用一次这个函数,只保证最后一个肯定会调用,中间的有
    #可能不会调用,通过上例可以看到二者的值是完全一样的。

    '''5.控制显示位数,可以理解为:Scale的值为一整形,在输出显示时,它将会被转化为一字符串,如1.2转化为1.2或1.2000都是可以的'''
    #属性digits是控制显示的数字位数,将上面的例子中的数据以8位形式显示,在最后一位会添加一个0
    # -*- coding: cp936 -*-
    from Tkinter import *

    root = Tk()
    def printScale(text):
        print 'text = ',text
        print 'v = ',v.get()
    v = StringVar()
    Scale(root,
          from_ = 0,                #设置最小值
          to = 100.0,               #设置最大值
          resolution = 0.0001,      #设置步距值
          orient = HORIZONTAL,      #设置水平方向
          digits = 8,               #设置显示的位数为8
          variable = v,             #绑定变量
          command = printScale      #设置回调函数
          ).pack()
    print v.get()
    root.mainloop()


    '''6.设置Scale的标签属性label'''
    # -*- coding: cp936 -*-
    from Tkinter import *

    root = Tk()
    Scale(root,
          from_ = 0,                #设置最大值
          to = 100.0,               #设置最小值
          orient = HORIZONTAL,      #设置水平方向
          label = 'choice:',        #设置标签值
          ).pack()
    root.mainloop()
    #由label设置的值会显示在水平Scale的上方,用于提示信息

    '''7.设置/取得Scale的值'''
    # -*- coding: cp936 -*-
    from Tkinter import *
    root = Tk()
    sl = Scale(root)
    sl.set(50)      #将Scale的值设置为50
    print sl.get()  #打印当前的Scale的值
    sl.pack()
    root.mainloop()
    #slider的位置位于了中间,sl.set(50)起作用了,打印值为50。

  • 相关阅读:
    Google androd性能优化经典
    java Linkedhashmap源码分析
    android smali代码注入 实战一
    开源库ActiveAndroid + gson使用
    android开源项目:图片下载缓存库picasso
    第四次博客作业-结对项目
    第九次作业
    第八次作业
    软件工程第三次作业——关于软件质量保障初探
    第七次作业
  • 原文地址:https://www.cnblogs.com/LeeZz/p/3984311.html
Copyright © 2011-2022 走看看