【tkinter系列 第五课 Checkbutton窗口部件 】

您所在的位置:网站首页 tkinter复选框封装 【tkinter系列 第五课 Checkbutton窗口部件 】

【tkinter系列 第五课 Checkbutton窗口部件 】

2023-04-06 20:48| 来源: 网络整理| 查看: 265

python中通常我们写程序,显示结果和操作都是在终端区,如果要想实现一个有显示界面的程序那该怎样实现呢​?python中有好几个库都可以实现,这个系列我们一起来学习如何使用python自带的tkinter库来实现​。

本节课将要学习Checkbutton窗口部件,Checkbutton又叫复选框,那什么时候该用复选框呢?通常是在两个不同值之间选中或者不选中,一组按钮就可以实现很多值的一个选择。

例-1:登入网站是否要记住网站账号密码

例-2:选择你喜欢的动物。

今天我们组后就会实现一个可以选择自己喜欢的食物的一个案例。

1.显示一个最简单的复选框。

代码:

from tkinter import * #创建一个主窗口 root = Tk() # 创建 宽400高250的窗口 x是小写的英文字符 root.geometry('400x250') # 通过设置变量,可以追踪查询按钮状态 var = IntVar() # 定义按钮的变化的一个反应 def print_state(): print(var.get()) # c = Checkbutton(root, text="记住我", ) # c.pack() # 简写方法 设置文本内容,绑定变量和命令 Checkbutton(root, text="记住我",variable=var,command=print_state ).pack() # 程序一直循环,直到我们关闭窗口 root.mainloop()

效果:

解释:

复选框从一个状态变化到另外一个状态就会触发命令,启动程序是没有选中的,这是用鼠标点击选中,在终端区就会打印出1,再点击取消选中就会打印0。之所以会出现这种情况是因为按钮默认选中是1,没选中是0。

如果我要实现选中是10,没选中是1该怎样做呢?

非常简单,添加两个参数就可以了。

Checkbutton(root, text="记住我", variable=var, onvalue=5, offvalue=1,command=print_state).pack()

解释: onvalue表示选中的值,offvalue表示没选中的值。

效果:

如果不显示数字,要显示字符,需要将原来的var更改一下类型就可以了。

var = IntVar()

# 改成下面字符变量类型 var = StringVar() # 将原来的数字改成字符就可以了 Checkbutton(root, text="记住我", variable=var, onvalue="选中", offvalue="没选中",command=print_state).pack()

效果:

2.多个复选框

代码:

from tkinter import * import tkinter.messagebox #创建一个主窗口 root = Tk() # 创建 宽400高250的窗口 x是小写的英文字符 root.geometry('400x250') Label(root,text="选择你喜欢的水果?").pack() # 通过设置变量,可以追踪查询按钮状态 var_1 = StringVar() var_2 = StringVar() var_3 = StringVar() # 定义按钮的变化的一个反应 def print_state(): tkinter.messagebox.showinfo('提示', var_1.get()+var_2.get()+var_3.get()) # c = Checkbutton(root, text="记住我", ) # c.pack() # 简写方法 Checkbutton(root, text="苹果", variable=var_1,onvalue="苹果",offvalue="").pack() Checkbutton(root, text="香蕉", variable=var_2, onvalue="香蕉", offvalue="").pack() Checkbutton(root, text="梨", variable=var_3, onvalue="梨", offvalue="").pack() Button(root,text="确定",command=print_state).pack() # 程序一直循环,直到我们关闭窗口 root.mainloop()

效果:

解释:

这里的命令按钮绑定到一个单独的button按钮上了,选中对应的内容后,利用messagebox将选中的内容显示出来

往期精彩回顾

【tkinter系列 第四课 Entry和Text窗口部件 】

长按二维码,加关注!叶子陪你玩

欢迎转载,转载请注明出处! 欢迎关注公众微信号:叶子陪你玩 分享自己的python编程学习之路



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3