Python的标准Tk GUI工具包的接口
tkinter系列文章
Python tkinter (2) —— Button标签
目录
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 单选与多选框控件介绍,简单示例。