zoukankan      html  css  js  c++  java
  • tkinter第三章(单选和多选)RadioButton CheckButton

     最简单的CheckButton多选类

    import tkinter as tk
    #checkButton的内容,多选
    
    root = tk.Tk()
    
    
    v = tk.IntVar()#装整形变量的
    
    
    #variable:表示是否选中 v:选中为1,否则为0
    c = tk.Checkbutton(root,text='测试一下',variable=v)#是一个选项框,前面有小勾
    c.pack()#自动对齐
    
    l = tk.Label(root,textvariable=v)#显示下面的0和1
    l.pack()
    
     
    
    tk.mainloop()

    用for循环表示

    import tkinter as tk
    
    root = tk.Tk()
    
    GIRLS =['西施','貂蝉','王昭君','杨玉环']
    
    v = []
    
    for girl in GIRLS:#显示四大美女的显示框
      v.append(tk.IntVar())
    
    
      #variable:把变量放到最后一个 ,
      b = tk.Checkbutton(root,text=girl,variable = v[-1])
      b.pack(side = tk.LEFT)
    
    
    for each in v:#显示状态的框
      l = tk.Label(root,textvariable=each)
      l.pack(side = tk.LEFT)
    
     
    
     
    
    tk.mainloop()
    
     

     

    RadioButton 单选

    import tkinter as tk
    
    
    root = tk.Tk()
    
    v = tk.IntVar()
    
    
    #Radiobutto是单选框,只能选中一个
    #选中哪一个按钮,会把value的值赋给v
    a1 = tk.Radiobutton(root,text="one",variable=v,value=1)
    a1.pack(anchor=tk.W)#向西(west)对齐,即向左对齐
    
    a2 = tk.Radiobutton(root,text="two",variable=v,value=2)
    a2.pack(anchor=tk.W)
    
    a3 = tk.Radiobutton(root,text="three",variable=v,value=3)
    a3.pack(anchor=tk.W)
    
    
    #显示v的值
    l = tk.Label(root,textvariable=v)
    l.pack(anchor= tk.W)
    
    tk.mainloop()

    采用for循环将其整合

    import tkinter as tk
    
    root = tk.Tk()
    
    LANGS = [("python",1),("C",2),("Java",3),("Lua",4)]
    
    
    v = tk.IntVar()
    v.set(1)#把v的值设置为1
    
    for lang,num in LANGS:
      #选中后 把num的值赋给 variable
      b = tk.Radiobutton(root,text=lang,variable = v ,value =num)
      b.pack(anchor = tk.W)
    
    
    l = tk.Label(root,textvariable=v)#显示标签
    l.pack(side=tk.LEFT)
    
    
    tk.mainloop()

    LabelFrame框架

    import tkinter as tk
    
    #标签框架
    
    root = tk.Tk()
    
    #新建标签框架
    group = tk.LabelFrame(root,text="最好的语言是?")
    group.pack(padx=10,pady=10)
    
    
    LANGS = [("python",1),("C",2),("Java",3),("Lua",4)]
    
    
    v = tk.IntVar()
    for lang,num in LANGS:
      #选中后 把num的值赋给 variable
      b = tk.Radiobutton(group,text=lang,variable = v ,value =num)
      b.pack(anchor = tk.W)
    
    
    l = tk.Label(root,textvariable=v)#显示标签
    l.pack(side=tk.LEFT)
    
    
    tk.mainloop()

  • 相关阅读:
    Python之路系列:面向对象初级:静态属性、静态方法、类方法
    对象和类
    Python的函数参数传递
    python参数传递:对象的引用
    Python的locals()函数
    Python 异常处理
    Python变量类型的强制转换
    日常问题总结
    高效能人士的七个习惯
    Dojo入门:DOM操作
  • 原文地址:https://www.cnblogs.com/banzhen/p/7428057.html
Copyright © 2011-2022 走看看