第8讲,Checkbutton 多选框控件

前面学习了ListBox,RadioButton,他们都提供了让用户做选择的功能,Checkbutton同样可以提供这样的选择功能,而且,它是多选的

import tkinter as tk

window = tk.Tk()
window.title('checkbutton')
window.geometry('200x200')

label = tk.Label(window, bg='yellow', width=20, text='')
label.pack()


def select():
    select_lst = []

    if var1.get() == 1:      # var1.get()获取c1的状态值
        select_lst.append('python')

    if var2.get() == 1:
        select_lst.append('java')

    if var3.get() == 1:
        select_lst.append('php')

    text = "你选择了 " + ','.join(select_lst)
    label.config(text=text)


var1 = tk.IntVar()
var2 = tk.IntVar()
var3 = tk.IntVar()

c1 = tk.Checkbutton(window,
                    text='Python',      # 选项显示内容
                    variable=var1,      # 绑定变量var1
                    onvalue=1,          # 被选中时的状态值
                    offvalue=0,         # 没有被选中时的状态值
                    command=select)

c2 = tk.Checkbutton(window, text='java', variable=var2, onvalue=1, offvalue=0,
                    command=select)
c3 = tk.Checkbutton(window, text='php', variable=var3, onvalue=1, offvalue=0,
                    command=select)
c1.pack()
c2.pack()
c3.pack()


window.mainloop()

运行程序,效果图如下
tkinter Checkbutton

checkbutton 只有两个状态,选中或是未选中,在创建checkbutton控件值,设置onvalue和offvalue参数,我这里设置的是1和0,分别代表选中和未选中。

设置variable参数,将控件的值与变量绑定在一起,这样,通过变量var1就可以获取控件c1的状态值。

扫描关注, 与我技术互动

QQ交流群: 211426309

加入知识星球, 每天收获更多精彩内容

分享日常研究的python技术和遇到的问题及解决方案