Tkinter Checkbutton
Posted cloud-ken
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tkinter Checkbutton相关的知识,希望对你有一定的参考价值。
Tkinter Checkbutton
觉得有用的话,欢迎一起讨论相互学习~
- Checkbutton和Radiobutton类似,但是Radiobutton只能选中一个值,但是Checkbutton却能够选择多个值。
演示效果
创建windows
window = tk.Tk()
window.title(‘my window‘)
window.geometry(‘500x500‘)
创建显示label
var1 = tk.StringVar()
l = tk.Label(window, bg=‘yellow‘, width=4, textvariable=var1)
l.pack()
循环刷新窗口
window.mainloop() # 不断刷新主窗口
Checkbutton控件
var1 = tk.IntVar()
var2 = tk.IntVar()
c1 = tk.Checkbutton(window, text=‘Python‘, variable=var1, onvalue=1, offvalue=0,
command=print_selection)
c2 = tk.Checkbutton(window, text=‘C++‘, variable=var2, onvalue=1, offvalue=0,
command=print_selection)
c1.pack()
c2.pack()
- 表示当c1的显示是"Python",当选中的时候variable=onvalue=1,当没有选中的时候variable=offvalue=0。并且会调用print_selection函数命令
- 表示当c2的显示是"C++",当选中的时候variable=onvalue=1,当没有选中的时候variable=offvalue=0。并且会调用print_selection函数命令
print_selection
- 需要注意的是,当一个被选中和两个都被选中以及两个都不选几种情况都需要被考虑到。
def print_selection():
if (var1.get() == 1) & (var2.get() == 0):
l.config(text=‘I love only Python ‘)
elif (var1.get() == 0) & (var2.get() == 1):
l.config(text=‘I love only C++‘)
elif (var1.get() == 0) & (var2.get() == 0):
l.config(text=‘I do not love either‘)
else:
l.config(text=‘I love both‘)
以上是关于Tkinter Checkbutton的主要内容,如果未能解决你的问题,请参考以下文章
tkinter Checkbutton 小部件返回错误的布尔值
如何在 Tkinter 中禁用(灰显)一个 Checkbutton?