文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

tkinter如何获取复选框(Checkbutton)的值

2023-01-28 12:01

关注

tkinter获取复选框(Checkbutton)的值

定义GUI:

from tkinter import *
 
# 初始化Tk()
myWindow = Tk()
# 设置
myWindow.title('Python GUI Learning')
myWindow.geometry("%dx%d+%d+%d"%(400, 200, 200, 200))
# 创建Checkbutton
checkVar = StringVar(value="0")
check = Checkbutton(myWindow, text="Checkbutton test", variable=checkVar)
check.grid(row=0, column=0, sticky=W, padx=2 ,pady=5)
# 定义按钮点击事件
def button_Click(event=None):
    print(checkVar.get())
 
# 创建两个按钮
b1 =Button(myWindow, text='click me' , relief='raised', width=8, height=1, command=button_Click)
b1.grid(row=0, column=2, sticky=W, padx=2 ,pady=10)
 
# 进入消息循环
myWindow.mainloop()

效果:

对复选框进行操作后,点击按钮输出信息:

tkinter包的使用-Checkbutton

下面的例子讲一下如何使用Checkbutton,它和Radiobutton的区别是,Radiobutton只可以选中一个,是单选按钮,Checkbutton可以同时选中多个,是多选按钮。

只选中Python:

只选中C++:

两个都选中:

都不选:

代码:

import tkinter as tk
 
window=tk.Tk()
window.title('my window')
window.geometry('200x100')
 
l=tk.Label(window,
           bg='yellow',
           width=20,
           text='empty')
l.pack()
 
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')
 
 
 
var1=tk.IntVar()
var2=tk.IntVar()
c1=tk.Checkbutton(window,
                  text='Python',
                  variable=var1,
                  onvalue=1,
                  offvalue=0,
                  command=print_selection
                  )
c1.pack()
c2=tk.Checkbutton(window,
                  text='C++',
                  variable=var2,
                  onvalue=1,
                  offvalue=0,
                  command=print_selection
                  )
c2.pack()
 
window.mainloop()

在Checkbutton()中参数onvalue和前面讲的部件radiobutton中的value相似, 当我们选中了这个checkbutton,onvalue的值1就会放入到var1中, 然后var1将其赋值给参数variableoffvalue用法相似,但是offvalue是在没有选中这个checkbutton时,offvalue的值1放入var1,然后赋值给参数variable 这是创建一个checkbutton部件,以此类推,可以创建多个checkbutton

在print_selection()中config在之前的例子中就是将参数text的值显示,这里的var1.get() == 1 就是前面所说的var1获得的变量onvalue=1var1.get() == 0即是var1获得的变量offvalu=0同理var2也是如此。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯