学习笔记(52):Python实战编程-Radiobutton
立即学习:https://edu.csdn.net/course/play/19711/343115?utm_source=blogtoedu
单选钮:Radiobutton
1)相对于大部分组件而言,最大的区别在于单选钮绑定事件是直接通过构建单选钮时方法中的command参数来进行事件的绑定,而其他的组件一般都是通过bind函数来进行事件的绑定。
self.singlebutton = tkinter.Radiobutton(self.root,text = title,value = index,command = self.singlebutton_handle_event,#通过command给单选钮绑定事件variable = self.status)
2)单选钮在创建时得注意的是:含有两个值,一个是显示的文本值,一个是真正执行操作或者标记的值如下:
self.sex = [("男",0),("女",1)]#设置单选钮要显示的值以及真实操作的值
3)要想给单选钮设置默认的选中项,则需要使用IntVar函数,该函数可以通过.set()来设置初始的索引,在创建单选钮的参数中使variable=.set()即可,也可以通过.get来获得当前选择项的索引
self.status = tkinter.IntVar()#设置默认选项self.status.set(0)self.singlebutton = tkinter.Radiobutton(self.root,text = title,value = index,command = self.singlebutton_handle_event,#通过command给单选钮绑定事件variable = self.status)index == self.status.get():
4)完整代码
import tkinter#导入创建窗体的相关模块
import osimage_path = r'C:\Users\jinlin\Desktop\python_further_study\GUI编程\resources' + os.sep + 'linlianqin.gif'#因为每个平台的分隔符不一样,所以用os.sep可以自动切换到相应平台的分隔符class Mainwindow():#创建窗口类def __init__(self):self.root = tkinter.Tk()#创建主体窗口self.root.title('linlianqin')#定义窗体的名字self.root.geometry('500x500')#定义窗体的初始大小self.root.maxsize(1200,1200)#设置窗口可以显示的最大尺寸self.single_button()self.root.mainloop()#显示窗口,这个代码一定要放在所有窗口设置的后面def single_button(self):#定义一个单选妞self.status = tkinter.IntVar()#设置默认选项self.label = tkinter.Label(self.root,text = "请选择您的性别:")self.label.grid(row = 0,column = 0)self.sex = [("男",0),("女",1)]#设置单选钮要显示的值以及真实操作的值self.status.set(0)self.column = 1for title,index in self.sex:self.singlebutton = tkinter.Radiobutton(self.root,text = title,value = index,command = self.singlebutton_handle_event,#通过command给单选钮绑定事件variable = self.status)self.singlebutton.grid(row = 0,column=self.column)self.column+=1def singlebutton_handle_event(self):#定义单选钮的处理事件self.content = tkinter.StringVar()self.label = tkinter.Label(self.root,textvariable = self.content)for title,index in self.sex:if index == self.status.get():self.content.set("您选择的性别是%s"%title)self.label.grid(row = 1,column = 0)if __name__ == '__main__':Mainwindow()#将窗体类实例化
学习笔记(52):Python实战编程-Radiobutton相关推荐
- 学习笔记(53):Python实战编程-Checkbutton
立即学习:https://edu.csdn.net/course/play/19711/343116?utm_source=blogtoedu 复选框Checkbutton:与单选框是相对的,一些用法 ...
- 学习笔记(58):Python实战编程-Combobox
立即学习:https://edu.csdn.net/course/play/19711/343121?utm_source=blogtoedu 1.下拉列表Combobox:与Listbox相比,下拉 ...
- 学习笔记(57):Python实战编程-Treeview
立即学习:https://edu.csdn.net/course/play/19711/343120?utm_source=blogtoedu 1.树状结构Treeview:分为树状折叠式列表和列表显 ...
- 学习笔记(55):Python实战编程-Scrollbar
立即学习:https://edu.csdn.net/course/play/19711/343118?utm_source=blogtoedu 1.滚动条ScrollBar: 当列表内容项的内容过多时 ...
- 学习笔记(54):Python实战编程-Scale
立即学习:https://edu.csdn.net/course/play/19711/343117?utm_source=blogtoedu 1.滑块组件Scale: 用于定义一定范围的区间,如音量 ...
- 学习笔记(51):Python实战编程-ListBox
立即学习:https://edu.csdn.net/course/play/19711/343113?utm_source=blogtoedu listbox 知识点: 1)创建listbox: se ...
- 学习笔记(49):Python实战编程-place布局
立即学习:https://edu.csdn.net/course/play/19711/343111?utm_source=blogtoedu 1.place布局: 1)最灵活的布局方式,是根据坐标点 ...
- 学习笔记(48):Python实战编程-grid布局
立即学习:https://edu.csdn.net/course/play/19711/343110?utm_source=blogtoedu grid布局:根据表结构进行的布局,索引为0行0列开始, ...
- 学习笔记(47):Python实战编程-pack布局
立即学习:https://edu.csdn.net/course/play/19711/343109?utm_source=blogtoedu pack布局: 1)最常用的布局,顺序排列布局方法 2) ...
最新文章
- JPA扩展(自定义sql)
- 韩师师范学院计算机科学与技术在哪个学区,2017年韩山师范学院本科插班生考试《数据结构》A卷...
- [html] 怎样禁用页面中的右键、打印、另存为、复制等功能?
- Selenium介绍
- GetProcAddress() LoadLibrary() DLL
- bootstraptable导出excel独立使用_使用 EasyPOI 优雅导出Excel模板数据(含图片)
- 申请了:苹果已经在测试“毫米波”5G技术
- Ubuntu 添加用户
- Matplotlib 中文用户指南 1 简介
- 目前使用的工具及开发方式
- excel通过转成xml格式模板,下载成excel文件
- centos7 安装ftp服务
- Java-茴香豆研究(一)
- r相机采集的图片转化为halcon识别的图像源码_直播系统开发:关于直播源码中美颜SDK的作用...
- Packet Tracer学习小结(基本SwitchPort VLan)
- html实现圈内特效
- IC设计基础系列之低功耗篇2:(数字IC)低功耗设计入门(二)——功耗的分析
- str[]与*str的区别
- 北京工业大学2019年第八届暑期科技夏令营全记录 (计算机专业)
- ACM 算法 阶段性练习 (比较全面)
热门文章
- IOS-awakeFromNib和viewDidLoad
- VS2008 AJAX控件介绍
- 【转载】在C#中运用SQLDMO备份和恢复Microsoft SQL Server数据库
- 获取滚动文本框TextArea焦点位置信息
- 怎样在PHP中通过ADO调用Asscess数据库和COM程序
- iOS运行时-使用Runtime向Category中添加属性以及运行时介绍
- 如何通过RFID开发来迎接第四次工业革命(转)
- depends用于测试程序运行所缺少的文件,可以帮我们很快找到问题
- iOS-AFNetworking参数和多文件同时上传【多文件上传】
- 客户端是选择Java Swing还是C# Winform