一、单选一
import tkinter as tk
def printSelection():
num=var.get()
if num==1:
label.config(text='你是男生')
else:
label.config(text='你是女生')
win=tk.Tk()
win.title("单选1")
var=tk.IntVar()
var.set(1)
label=tk.Label(win,text='这是预设,尚未选择',bg='lightyellow')
label.pack()
rbman=tk.Radiobutton(win,text='男生',
variable=var,value=1,
command=printSelection)
rbman.pack()
rbwoman=tk.Radiobutton(win,text='女生',
variable=var,value=2,
command=printSelection)
rbwoman.pack()
win.mainloop()
二、单选二
import tkinter as tk
def printSelection():
label.config(text='你是'+var.get())
win=tk.Tk()
win.title("单选2")
var=tk.StringVar()
var.set('男生')
label=tk.Label(win,text='这是预设,尚未选择',bg='lightyellow')
label.pack()
rbman=tk.Radiobutton(win,text='男生',
variable=var,value='男生',
command=printSelection)
rbman.pack()
rbwoman=tk.Radiobutton(win,text='女生',
variable=var,value='女生',
command=printSelection)
rbwoman.pack()
win.mainloop()
三、单选三
import tkinter as tk
def printSelection():
print(cities[var.get()])
win=tk.Tk()
win.title("单选3")
cities={0:'北京',1:'上海',2:'广州',3:'厦门',4:'武汉'}
var=tk.IntVar()
var.set('0')
label=tk.Label(win,text='选择最喜欢的城市',
fg='blue',bg='lightyellow',
width=30)
label.pack()
for val,city in cities.items():
tk.Radiobutton(win,
text=city,
variable=var,value=val,
command=printSelection).pack()
win.mainloop()
四、盒子选项按钮
import tkinter as tk
def printSelection():
print(cities[var.get()])
win=tk.Tk()
win.title("单选4")
cities={0:'北京',1:'上海',2:'广州',3:'厦门',4:'武汉'}
var=tk.IntVar()
var.set('0')
label=tk.Label(win,text='选择最喜欢的城市',
fg='blue',bg='lightyellow',
width=30)
label.pack()
for val,city in cities.items():
tk.Radiobutton(win,
text=city,
indicatoron=0,
width=30,
variable=var,value=val,
command=printSelection).pack()
win.mainloop()
五、含图象的选项按钮
import tkinter as tk
def printSelection():
label.config(text='你选的是'+var.get())
win=tk.Tk()
win.title("单选5")
imgStar=tk.PhotoImage(file='star.gif')
imgMoon=tk.PhotoImage(file='moon.gif')
imgSun=tk.PhotoImage(file='sun.gif')
var=tk.StringVar()
var.set('星星')
label=tk.Label(win,text='这是默认值,尚未选择',
fg='blue',bg='lightyellow',
width=30)
label.pack()
rbStar=tk.Radiobutton(win,
image=imgStar,
text='星星',compound=tk.RIGHT,
variable=var,value='星星',
command=printSelection)
rbStar.pack()
rbMoon=tk.Radiobutton(win,
image=imgMoon,
text='月亮',compound=tk.RIGHT,
variable=var,value='月亮',
command=printSelection)
rbMoon.pack()
rbSun=tk.Radiobutton(win,
image=imgSun,
text='太阳',compound=tk.RIGHT,
variable=var,value='太阳',
command=printSelection)
rbSun.pack()
win.mainloop()