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

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()

效果如下:

Python tkinter (5) 选项按钮与复选框_第1张图片

获取选中

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

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

示例如下:

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函数都会对选择结果进行判断,

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

效果如下:

Python tkinter (5) 选项按钮与复选框_第2张图片

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 (5) 选项按钮与复选框_第3张图片

总结

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

你可能感兴趣的:(#,Tkinter,python,开发语言,后端)