python中通常我们写程序,显示结果和操作都是在终端区,如果要想实现一个有显示界面的程序那该怎样实现呢?python中有好几个库都可以实现,这个系列我们一起来学习如何使用python自带的tkinter库来实现。
本节课将要学习Radiobutton窗口部件,Radiobutton又叫单选框,那什么时候该用单选框呢?通常是在多个选项中选取一个,按钮总是以组存在,一组按钮需要使用相同的变量,一组按钮只能有一个被选中。
例-1:你最喜欢的水果?
只能选一个,就可以使用单选按钮。
例-2:选择性别?
下面就来实现一个选择最喜欢水果的效果。
from tkinter import *
#创建一个主窗口
root = Tk()
# 创建 宽400高250的窗口 x是小写的英文字符
root.geometry('400x250')
v = IntVar()
Radiobutton(root, text="One", variable=v, value=1).pack()
Radiobutton(root, text="Two", variable=v, value=2).pack()
Radiobutton(root, text="Three", variable=v, value=3).pack()
# 程序一直循环,直到我们关闭窗口
root.mainloop()
解释:
三个单选框按钮设置的variable都要设置为相同,value要不相同。
from tkinter import *
#创建一个主窗口
root = Tk()
# 创建 宽400高250的窗口 x是小写的英文字符
root.geometry('400x250')
# 给label创建一个文本变量,设置初始内容为 结果
s=StringVar()
s.set("结果")
# 定义一个函数,将label的值设置为单选框的值
def change_value():
value=v.get()
s.set(value)
# 设置红色背景的标签
Label(root, textvariable=s,bg="red").pack()
# 设置单选框的数值变量
v = IntVar()
# 给单选框绑定命令
Radiobutton(root, text="One", variable=v, value=1,command=change_value).pack()
Radiobutton(root, text="Two", variable=v, value=2, command=change_value).pack()
Radiobutton(root, text="Three", variable=v,value=3, command=change_value).pack()
# 程序一直循环,直到我们关闭窗口
root.mainloop()
from tkinter import *
import tkinter.messagebox
#创建一个主窗口
root = Tk()
# 创建 宽400高250的窗口 x是小写的英文字符
root.geometry('400x250')
# 定义一个函数
def change_value():
value=v.get()
tkinter.messagebox.showinfo("提示",'你最喜欢的水果是'+value)
# 设置红色背景的标签
Label(root, text="你最喜欢的水果是?").pack()
# 设置单选框的数值变量
v = StringVar()
# 给单选框绑定命令
Radiobutton(root, text="苹果", variable=v, value="苹果").pack()
Radiobutton(root, text="桃子", variable=v,value="桃子").pack()
Radiobutton(root, text="香蕉", variable=v,value="香蕉").pack()
Radiobutton(root, text="梨", variable=v,value="梨").pack()
Radiobutton(root, text="其它", variable=v,value="其它").pack()
# 设定一个按钮
Button(root,text="确定",command=change_value).pack()
# 程序一直循环,直到我们关闭窗口
root.mainloop()
欢迎转载,转载请注明出处!