1. Radio按钮
有的时候我们需要在多个选项中选择一项,那么我们就可以使用到Tkinter模块中的Radiobutton方法来创建相关按钮,创建的选项效果图如下:
语法格式同前面的方法类似,它的相关可选项也相似,下面我们就直接通过例子来学习这个控件,代码如下:
import tkinter
win = tkinter.Tk()
win.title("Python教程")#给窗口取一个标题
win.minsize(366, 50) # 定义一个最小尺寸
def get_data():
print('选择的为第%d项'%x.get())
x = tkinter.IntVar()# 在这里我们把一组单选框绑定为同一个变量
radio_one = tkinter.Radiobutton(win, text="选项1", value=1, variable=x,
command=get_data)#生成button1
radio_one.pack()
radio_two = tkinter.Radiobutton(win, text="选项2", value=2, variable=x,
command=get_data)
radio_two.pack()
win.mainloop()
我们每点击一个选项,就选择了该按钮,然后在控制台输出了选择的第几项,需要注意的是我们在定义的时候给两个Radiobutton使用了同一变量,通过这个我们才可以使得两个按钮公用的为一个信息,当然我们还可以通过具体函数去实现更多的功能,在这里先对Radiobutton做一个简单的了解。
Check控件
我们在做选择题的时候会遇到多选题,上面我们学习的Radio按钮即给我们提供了单选的功能,那么如果我们要使用多选操作的时候就要通过Check按钮来实现。
Check按钮的显示效果如图所示:
Check按钮使用的时候tkinter模块中的Checkbutton方法来创建相关控件,下面我们也直接通过例子来学习这个按钮,代码如下:
import tkinter
win = tkinter.Tk()
win.title("Python教程")
win.minsize(200,200)
def get_data():
my_str = ''
if x.get() == True:
my_str += "已选择选项1\n"
if y.get() == True:
my_str += "已选择选项2\n"
if z.get() == True:
my_str += "已选择选项3\n"
text.delete(0.0, tkinter.END) # 清除text文板框中的内容
text.insert(tkinter.INSERT, my_str) #把上面的信息插入到文本框中
x = tkinter.BooleanVar()
ckbutton_one = tkinter.Checkbutton(win, text="选项1", variable=x,
command=get_data)
ckbutton_one.pack()
y = tkinter.BooleanVar()
ckbutton_two = tkinter.Checkbutton(win, text="选项2", variable=y,
command=get_data)
ckbutton_two.pack()
z = tkinter.BooleanVar()
ckbutton_three = tkinter.Checkbutton(win, text="选项3", variable=z,
command=get_data)
ckbutton_three.pack()
text = tkinter.Text(win, width=50, height=5)
text.pack()
win.mainloop()
运行结果为:
在这个例子中,我们对三个按钮分别绑定了三个不同的变量,我们可以在点击不同按钮的时候给出相应的信息,在这里我们给按钮定义了一个布尔值的选取,当我们选择了该选项的时候,该选项的布尔值为True,然后我们就可以输出选项为True时的相关信息,如果未选中时我们也可以给出相应的信息。
Tkinter模块(5)-Canvas
Canvas,中文意