zoukankan      html  css  js  c++  java
  • tkinter中checkbutton多选框控件和variable用法(六)

    checkbutton控件

    简单的实现多选:

    复制代码
     1 import tkinter
     2 
     3 wuya = tkinter.Tk()
     4 wuya.title("wuya")
     5 wuya.geometry("300x200+10+20")
     6 
     7 # 创建四个多选框
     8 cb1 = tkinter.Checkbutton(wuya,text='周杰伦')
     9 cb1.pack()
    10 cb2 = tkinter.Checkbutton(wuya,text='周星驰')
    11 cb2.pack()
    12 cb3 = tkinter.Checkbutton(wuya,text='爱舞涯')
    13 cb3.pack()
    14 cb4 = tkinter.Checkbutton(wuya,text='蔡依林')
    15 cb4.pack()
    16 
    17 wuya.mainloop()
    复制代码

    tkinter中如果不设置对齐方式,默认是居中的,如果要设置可以在pack()中加参数:cb1.pack(side='left')

    结果为:

    结合之前学的加lable和打印功能:

    复制代码
     1 import tkinter
     2 
     3 wuya = tkinter.Tk()
     4 wuya.title("wuya")
     5 wuya.geometry("300x200+10+20")
     6 
     7 # 加标签
     8 lb = tkinter.Label(wuya,text='请选择自己喜欢的名星(多选):',fg='blue')
     9 lb.pack()
    10 
    11 
    12 
    13 # 定义执行选择框后的函数
    14 def func():
    15     msg = ''
    16     if h1.get() == True: # 因为h1创建时是bool的运算,选中为真,不选为假
    17         msg += "周杰伦
    "
    18     if h2.get() == True:
    19         msg += "周星驰
    "
    20     if h3.get() == True:
    21         msg += "爱舞涯
    "
    22     if h4.get() == True:
    23         msg += "蔡依林
    "
    24 
    25     text.delete(0.0,tkinter.END)   # 清除text中的内容,0.0表示从第一行第一个字开始清除,end表示清除到最后结束
    26     text.insert('insert',msg)
    27 
    28 # 创建四个多选框
    29 h1 = tkinter.BooleanVar() # 设置选择框对象
    30 cb1 = tkinter.Checkbutton(wuya,text='周杰伦',variable=h1,command=func)
    31 cb1.pack()
    32 
    33 h2 = tkinter.BooleanVar()
    34 cb2 = tkinter.Checkbutton(wuya,text='周星驰',variable=h2,command=func)
    35 cb2.pack()
    36 
    37 h3 = tkinter.BooleanVar()
    38 cb3 = tkinter.Checkbutton(wuya,text='爱舞涯',variable=h3,command=func)
    39 cb3.pack()
    40 
    41 h4 = tkinter.BooleanVar()
    42 cb4 = tkinter.Checkbutton(wuya,text='蔡依林',variable=h4,command=func)
    43 cb4.pack()
    44 # side='left'表示左对齐
    45 
    46 # 创建一个文本框
    47 text = tkinter.Text(wuya,width=30,height=10)
    48 text.pack()
    49 
    50 
    51 wuya.mainloop()
    复制代码

    结果为:

     

    variable用法

    variable主要用于传参和绑定变量。主要参数有:variabletextvariableonvalueoffvaluevalue

    他是双向绑定的,也就是说如果该变量发生变化,随之绑定的控件也会变化,与他保持一致

    常用的variable变量有:

      x = StringVar()  保存一个 string 类型变量, 默认值为""

      x = IntVar()  保存一个整型变量, 默认值为0

      x = DoubleVar()  保存一个浮点型变量,默认值为0.0

      x = BooleanVar()  保存一个布尔型变量,返回值为0表示假,1表示真

    对他的操作主要有两个:

      设置他的值,用set()方法,即:x.set()

      得到他的值,用get()方法,即:x.get()

  • 相关阅读:
    delphi实现FTP下载
    delphi中ClientDataSet的隐含功能
    删除注册的ODBC
    ZOJ 1041 Transmitters
    POJ 3232 Accelerator
    POJ 3460 Booksort
    UVa 11552 Fewest Flops
    SOJ 8064 Whack the Groundhog
    BNU OJ 29355 手速为王
    POJ 3322 Bloxorz I
  • 原文地址:https://www.cnblogs.com/anita-harbour/p/9315444.html
Copyright © 2011-2022 走看看