Python tkinter (5) 选项按钮与复选框

本文介绍了如何在Python中使用Tkinter库实现Checkbox和RadioButton控件,包括多选框功能的展示、绑定变量以及单选功能的实现,提供了简单示例和代码片段。
摘要由CSDN通过智能技术生成

Python的标准Tk GUI工具包的接口

tkinter系列文章

python tkinter窗口简单实现

Python tkinter (1) —— Label标签

Python tkinter (2) —— Button标签

Python tkinter (3) —— Entry标签

Python tkinter (4) —— Text控件

目录

CheckButton

简单示例

获取选中

Radiobutton

简单示例

总结


CheckButton

多选框控件

简单示例

显示一个选择爱好的多选框功能,列举了三个运动选项。

示例如下:

import tkinter

tk = tkinter.Tk()
tk.title('checkbutton示例')
tk.geometry('300x200+200+20')


check1 = tkinter.Checkbutton(tk, text='篮球')
check1.pack()
check2 = tkinter.Checkbutton(tk, text='足球')
check2.pack()
check3 = tkinter.Checkbutton(tk, text='乒乓球')
check3.pack()

tk.mainloop()

效果如下:

获取选中

首先需要多选框绑定变量,每个多选框都需要绑定一个布尔值变量。

通过同一个事件对选中后情况进行判断,最后在文本控件中显示选中结果。

示例如下:

import tkinter

tk = tkinter.Tk()
tk.title('checkbutton示例')
tk.geometry('300x200+200+20')

# 判断选中 并显示相应结果
def update_data():
    message = ''
    if hobby1.get() == True:
        message += "篮球\n"
    if hobby2.get() == True:
        message += "足球\n"
    if hobby3.get() == True:
        message += "乒乓球\n"

    # 清除text中的所有内容
    # 清空范围为:下标为0的第一行 到最后
    text1.delete(0.0, tkinter.END)
    text1.insert(tkinter.INSERT, message)

# 绑定变量
hobby1 = tkinter.BooleanVar()
check1 = tkinter.Checkbutton(tk, text='篮球', variable=hobby1, command=update_data)
check1.pack()
hobby2 = tkinter.BooleanVar()
check2 = tkinter.Checkbutton(tk, text='足球', variable=hobby2, command=update_data)
check2.pack()
hobby3 = tkinter.BooleanVar()
check3 = tkinter.Checkbutton(tk, text='乒乓球', variable=hobby3, command=update_data)
check3.pack()

# 使用文本显示选中
text1 = tkinter.Text(tk, width=100, height=5)
text1.pack()
tk.mainloop()

因为每改变一个选中,update_data函数都会对选择结果进行判断,

故需要清除以往选中显示的结果。

效果如下:

Radiobutton

简单示例

单选经典场景应该就是选性别吧;当实现两个单选后,需要把它们绑定同一个变量,这样变成同一组的选项,才可实现单选功能。下面将实现单选并打印选中变量。

示例如下:

import tkinter

tk = tkinter.Tk()
tk.title('Radiobutton示例')
tk.geometry('300x200+200+20')

def update_date():
    print(rvalue.get())

# 一组单选框要绑定同一个变量 成为同一组选项
rvalue = tkinter.IntVar()
radio1 = tkinter.Radiobutton(tk, text='男',
                             value=1, variable=rvalue,
                             command=update_date)
radio1.pack()
radio2 = tkinter.Radiobutton(tk, text='女',
                             value=2, variable=rvalue,
                             command=update_date)
radio2.pack()
tk.mainloop()

效果如下:

总结

本文主要是Python tkinter 单选与多选框控件介绍,简单示例。

  • 10
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JSON_L

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值