一、什么是Tkinter Checkbox?
Python中的Tkinter是一个用于快速创建用户界面的标准GUI工具包。它提供了一组用于创建窗口小部件和框架的工具。其中,复选框是一种常用的小部件,它允许用户在选项之间进行多选,以便在其它操作之前进行选择。
复选框通常是一个小方框,可以在其中添加一个选中符号(通常是一个勾选框)。它们通常与单选按钮一起使用,但与单选按钮不同,它们可以选择多个选项。
from tkinter import * win = Tk() win.geometry("100x100") button1=Checkbutton(win, text='男') button1.pack() win.mainloop()
二、Tkinter Checkbox使用方法
复选框通常不需要设置很多属性,通常只需要设置文本和变量即可。文本是将在复选框旁显示的标签,而变量必须是Tkinter变量(一种特殊类型的变量)。
通常,用户设置的值为1或0。在tkinter中,使用IntVar()变量存储这些值,1表示选中,0表示未选中。
from tkinter import * win = Tk() win.geometry("100x100") var=IntVar() # 用于存储选中状态 button1=Checkbutton(win, text='男', variable=var) button1.pack() win.mainloop()
相同的变量可以绑定到多个复选框中,这样当用户更改其中一个复选框时,关联的所有复选框状态都将被更新。
from tkinter import * win = Tk() win.geometry("100x100") var1=IntVar() var2=IntVar() button1=Checkbutton(win, text='男', variable=var1) button2=Checkbutton(win, text='女', variable=var2) button1.pack() button2.pack() win.mainloop()
三、Tkinter Checkbox实例
下面的代码是一个示例,展示如何使用Tkinter中的复选框来选择多个选项并打印选中的选项。
from tkinter import * class Checkbox(Frame): def __init__(self, master): super(Checkbox, self).__init__(master) self.var1 = IntVar() self.var2 = IntVar() self.var3 = IntVar() self.c1 = Checkbutton(self, text="男", variable=self.var1, onvalue=1, offvalue=0) self.c2 = Checkbutton(self, text="女", variable=self.var2, onvalue=1, offvalue=0) self.c3 = Checkbutton(self, text="其他", variable=self.var3, onvalue=1, offvalue=0) self.c1.pack(side=LEFT) self.c2.pack(side=LEFT) self.c3.pack(side=LEFT) self.pack() def dump(self): print(self.var1.get(), self.var2.get(), self.var3.get()) root = Tk() app = Checkbox(root) Button(text='打印选中项', command=app.dump).pack() root.mainloop()
在上面的示例中,我们定义了一个名为Checkbox的类,它继承自tkinter的Frame类。我们更改所有复选框的值存储在变量中的方式,并使用onvalue和offvalue设置选中和非选中状态。
最终,“打印选中项”按钮将调用dump函数并打印所有选中的值。
四、总结
复选框是一种常用的用户界面元素,在Tkinter中可以通过Checkbutton类进行实现。Tkinter提供了一组用于创建多种窗口小部件和框架的工具,并且我们还可以设置变量将值存储在内存中,并将其绑定到多个复选框中。
复选框允许用户在选项之间进行多选,以便在其它操作之前进行选择。在以上示例中,我们展示了如何使用Tkinter中的复选框来选择多个选项并打印选中的选项。