Checkbutton 又称为多选按钮
可以表示两种状态:On 和 Off,可以设置回调函数,每当点击此按钮时回调函数被调用
一个简单的Checkbutton例子:
示例:
import tkinter as tk
root = tk.Tk()
tk.Checkbutton(root, text='py3study').pack()
root.mainloop()
效果:
设置Checkbutton的回调函数
不管 Checkbutton 的状态如何,此回调函数都会被调用
示例:
import tkinter as tk
def calltext():
print('py3study.com')
root = tk.Tk()
tk.Checkbutton(root, text='py3study', command=calltext).pack()
root.mainloop()
效果:
通过回调函数改变 Checkbutton 的显示文本 text 的值
代码:
import tkinter as tk
def calltext():
v.set('check py3study')
root = tk.Tk()
v = tk.StringVar()
tk.Checkbutton(root, text='www.py3study.com', textvariable=v, command=calltext).pack()
v.set('python3')
root.mainloop()
效果:
Checkbutton 的值不仅仅是1或0,可以是其他类型的数值,可以通过 onvalue 和offvalue 属性设置 Checkbutton 的状态值,如下代码将 On 设置为'python',Off 值设置为'Tkinter',程序的打印值将不再是0或1,而是'Tkinter’或‘python’
示例:
import tkinter as tk
def calltext():
print(v.get())
root = tk.Tk()
v = tk.StringVar()
#将一字符串与 Checkbutton 的值绑定,每次点击 Checkbutton,将打印出当前的值
tk.Checkbutton(root, text='www.py3study.com', onvalue='python', offvalue='tkinter', variable=v,
command=calltext).pack()
root.mainloop()
效果: