一、Radiobutton单选按钮
Radiobutton 控件用于选择同一组单选按钮中的一个。
Radiobutton 可以显示文本,也可以显示图像
from tkinter import * from tkinter import messagebox import tkinter as tk class Application(tk.Frame): def __init__(self,master=None): tk.Frame.__init__(self, master) self.master = master self.pack() self.createWidget() def createWidget(self): self.v = StringVar() # 设置默认值 self.v.set('M') self.r1 = Radiobutton(self, text='男性', value='M', variable=self.v) self.r2 = Radiobutton(self, text='女性', value='F', variable=self.v) self.r1.pack(side='left') self.r2.pack(side='left') Button(self, text='确定', command=self.confirm).pack(side='left') def confirm(self): messagebox.showinfo('测试', '选择的性别:'+ self.v.get(), ) if __name__ == '__main__': root = Tk() root.geometry('400x50+200+300') root.title('性别选择') app = Application(root) root.mainloop()
运行结果
点击确定后弹出如下窗口
二、Checkbutton复选按钮
Checkbutton 控件用于选择多个按钮的情况。
Checkbutton可以显示文本,也可以显示图像。
代码演示
import tkinter as tk from tkinter import * from tkinter import messagebox class Application(tk.Frame): def __init__(self, master=None): tk.Frame.__init__(self, master) self.master = master self.pack() self.createWidget() def createWidget(self): self.codeHobby = IntVar() self.videHobby = IntVar() print(self.codeHobby.get()) # 默认值是0 self.c1 = Checkbutton(self, text='敲代码', variable=self.codeHobby, onvalue=1, offvalue=0) self.c2 = Checkbutton(self, text='看视频', variable=self.videHobby, onvalue=1, offvalue=0) self.c1.pack(side='left') self.c2.pack(side='left') Button(self, text='确定', command=self.confirm).pack(side='left') def confirm(self): if self.videHobby.get() == 1: messagebox.showinfo('测试', '看视频,都是正常人有的爱好!你喜欢看什么类型?') if self.codeHobby.get() == 1: messagebox.showinfo('测试', '抓获野生程序猿一只!') if __name__ == '__main__': root = Tk() root.title('Checkbutton测试') root.geometry('400x50+200+300') app = Application(root) root.mainloop()
运行结果
两个选项选择后点击确定 首先弹出以下窗口,再点击确定
弹出以下窗口