前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Tkinter Checkbutton

Tkinter Checkbutton

作者头像
演化计算与人工智能
发布2020-08-14 10:14:02
7380
发布2020-08-14 10:14:02
举报

  • Checkbutton和Radiobutton类似,但是Radiobutton只能选中一个值,但是Checkbutton却能够选择多个值。

演示效果

创建windows

代码语言:javascript
复制
window = tk.Tk()
window.title('my window')
window.geometry('500x500')

创建显示label

代码语言:javascript
复制
var1 = tk.StringVar()
l = tk.Label(window, bg='yellow', width=4, textvariable=var1)
l.pack()

循环刷新窗口

代码语言:javascript
复制
window.mainloop()  # 不断刷新主窗口

Checkbutton控件

代码语言:javascript
复制
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

  • 需要注意的是,当一个被选中和两个都被选中以及两个都不选几种情况都需要被考虑到。
代码语言:javascript
复制
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')
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-04-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 DrawSky 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • print_selection
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档