效果展示:
默认选择第一项,并显示“you have selected A”
当点击Option B或者Option C时,顶上的文字跟随变化
import tkinter as tk # 定义窗口 window = tk.Tk() window.title('my window') # 窗口title window.geometry('350x300') # 窗口尺寸 # 定义Label l = tk.Label(window, bg="yellow", width=20,text='you have selected A') l.pack() def print_selection(): # 改变L参数,r_value.get()获取共享变量的值 l.config(text='you have selected ' + r_value.get()) # 定义Radiobutton ''' text 代表显示的文字 variable,value表示,当被选中时,将value的值,赋值给variable variable可以理解为同一个组中与其他radiobutton的共享变量 ''' r_value = tk.StringVar()
# 默认显示A选项 r_value.set('A') r1 = tk.Radiobutton(window, text='Option A', variable=r_value, value='A', command=print_selection) r1.pack() r2 = tk.Radiobutton(window, text='Option B', variable=r_value, value='B', command=print_selection) r2.pack() r3 = tk.Radiobutton(window, text='Option C', variable=r_value, value='C', command=print_selection) r3.pack() window.mainloop()
总结:
1.这三个RadioButton都是在一个组内,所以每次只能选择一个
2.变量r_value相当于一个组内的共享变量,选中一个item后,会把value的值赋予共享变量variable
3.r_value.set(),设置默认值
4.r_value.get(),获取选中的值