立即学习: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相关推荐

  1. 学习笔记(53):Python实战编程-Checkbutton

    立即学习:https://edu.csdn.net/course/play/19711/343116?utm_source=blogtoedu 复选框Checkbutton:与单选框是相对的,一些用法 ...

  2. 学习笔记(58):Python实战编程-Combobox

    立即学习:https://edu.csdn.net/course/play/19711/343121?utm_source=blogtoedu 1.下拉列表Combobox:与Listbox相比,下拉 ...

  3. 学习笔记(57):Python实战编程-Treeview

    立即学习:https://edu.csdn.net/course/play/19711/343120?utm_source=blogtoedu 1.树状结构Treeview:分为树状折叠式列表和列表显 ...

  4. 学习笔记(55):Python实战编程-Scrollbar

    立即学习:https://edu.csdn.net/course/play/19711/343118?utm_source=blogtoedu 1.滚动条ScrollBar: 当列表内容项的内容过多时 ...

  5. 学习笔记(54):Python实战编程-Scale

    立即学习:https://edu.csdn.net/course/play/19711/343117?utm_source=blogtoedu 1.滑块组件Scale: 用于定义一定范围的区间,如音量 ...

  6. 学习笔记(51):Python实战编程-ListBox

    立即学习:https://edu.csdn.net/course/play/19711/343113?utm_source=blogtoedu listbox 知识点: 1)创建listbox: se ...

  7. 学习笔记(49):Python实战编程-place布局

    立即学习:https://edu.csdn.net/course/play/19711/343111?utm_source=blogtoedu 1.place布局: 1)最灵活的布局方式,是根据坐标点 ...

  8. 学习笔记(48):Python实战编程-grid布局

    立即学习:https://edu.csdn.net/course/play/19711/343110?utm_source=blogtoedu grid布局:根据表结构进行的布局,索引为0行0列开始, ...

  9. 学习笔记(47):Python实战编程-pack布局

    立即学习:https://edu.csdn.net/course/play/19711/343109?utm_source=blogtoedu pack布局: 1)最常用的布局,顺序排列布局方法 2) ...

最新文章

  1. JPA扩展(自定义sql)
  2. 韩师师范学院计算机科学与技术在哪个学区,2017年韩山师范学院本科插班生考试《数据结构》A卷...
  3. [html] 怎样禁用页面中的右键、打印、另存为、复制等功能?
  4. Selenium介绍
  5. GetProcAddress() LoadLibrary() DLL
  6. bootstraptable导出excel独立使用_使用 EasyPOI 优雅导出Excel模板数据(含图片)
  7. 申请了:苹果已经在测试“毫米波”5G技术
  8. Ubuntu 添加用户
  9. Matplotlib 中文用户指南 1 简介
  10. 目前使用的工具及开发方式
  11. excel通过转成xml格式模板,下载成excel文件
  12. centos7 安装ftp服务
  13. Java-茴香豆研究(一)
  14. r相机采集的图片转化为halcon识别的图像源码_直播系统开发:关于直播源码中美颜SDK的作用...
  15. Packet Tracer学习小结(基本SwitchPort VLan)
  16. html实现圈内特效
  17. IC设计基础系列之低功耗篇2:(数字IC)低功耗设计入门(二)——功耗的分析
  18. str[]与*str的区别
  19. 北京工业大学2019年第八届暑期科技夏令营全记录 (计算机专业)
  20. ACM 算法 阶段性练习 (比较全面)

热门文章

  1. IOS-awakeFromNib和viewDidLoad
  2. VS2008 AJAX控件介绍
  3. 【转载】在C#中运用SQLDMO备份和恢复Microsoft SQL Server数据库
  4. 获取滚动文本框TextArea焦点位置信息
  5. 怎样在PHP中通过ADO调用Asscess数据库和COM程序
  6. iOS运行时-使用Runtime向Category中添加属性以及运行时介绍
  7. 如何通过RFID开发来迎接第四次工业革命(转)
  8. depends用于测试程序运行所缺少的文件,可以帮我们很快找到问题
  9. iOS-AFNetworking参数和多文件同时上传【多文件上传】
  10. 客户端是选择Java Swing还是C# Winform