#coding=utf-8

import wx

class MyFrame(wx.Frame):

    def __init__(self):
wx.Frame.__init__(self,None,-1,"Wxpython Radiobox 演示",size = (800,600))
panel = wx.Panel(self)
#第一种方法使用wx.RadioButton类
#RadioButton(parent, id=ID_ANY, label=EmptyString,
# pos=DefaultPosition, size=DefaultSize, style=0, validator=DefaultValidator, name=RadioButtonNameStr)
self.check1 = wx.RadioButton(panel,-1,"Value1",pos = (50,20),style = wx.RB_GROUP)
self.check2 = wx.RadioButton(panel, -1, "Value2", pos=(150,20))
self.check3 = wx.RadioButton(panel, -1, "Value3", pos=(250,20))
self.check1.Bind(wx.EVT_RADIOBUTTON,self.Event1)
self.check2.Bind(wx.EVT_RADIOBUTTON,self.Event1)
self.check3.Bind(wx.EVT_RADIOBUTTON,self.Event1) self.check4 = wx.RadioButton(panel, -1, "Value2-1", pos=(50,60), style=wx.RB_GROUP)
self.check5 = wx.RadioButton(panel, -1, "Value2-2", pos=(150,60))
self.check6 = wx.RadioButton(panel, -1, "Value2-3", pos=(250,60))
self.check4.Bind(wx.EVT_RADIOBUTTON,self.Event2)
self.check5.Bind(wx.EVT_RADIOBUTTON, self.Event2)
self.check6.Bind(wx.EVT_RADIOBUTTON, self.Event2) #第二种方法使用wx.RadioBox类
list3 = ["Value3-1","Value3-2" ,"Value3-3"]
#RadioBox(parent, id=ID_ANY, label=EmptyString, pos=DefaultPosition, size=DefaultSize,
# choices=[], majorDimension=0, style=RA_SPECIFY_COLS, validator=DefaultValidator, name=RadioBoxNameStr)
self.radiobox3 = wx.RadioBox(panel,-1,"测试3",pos=(50,100),choices=list3,style=wx.RA_SPECIFY_COLS)
self.radiobox3.Bind(wx.EVT_RADIOBOX,self.Event3) list4 = ["Value4-1","Value4-2" ,"Value4-3"]
self.radiobox4 = wx.RadioBox(panel, -1, "测试4",pos=(50, 180),choices=list4, style=wx.RA_SPECIFY_ROWS)
self.radiobox4.Bind(wx.EVT_RADIOBOX, self.Event4) #设定初始值,按序号进行选择,序号从0开始计数
self.radiobox3.SetSelection(2) #方式2,设定初始值,通过文本进行选择
self.radiobox4.SetSelection(self.radiobox4.FindString("Value4-3")) def Event1(self,event):
print "测试1:",self.check1.GetLabel() def Event2(self,event):
print "测试2:", self.check4.GetLabel() def Event3(self,event):
#方式1获取选中项
print "测试3:",self.radiobox3.GetStringSelection(),self.radiobox3.GetSelection()
#方式2获取选中项,更灵活
print "测试3.1",event.GetString(),event.GetInt() def Event4(self,event):
print "测试4:",self.radiobox4.GetStringSelection() if __name__ == "__main__":
app = wx.App()
frame = MyFrame()
frame.Show()
app.MainLoop()

不排版了,直接放代码,干货如下:

1、示范了两种写法,方法二更简单。

2、示范了如何在点击事件中获取 选中项

3、示范如何设置初始值,尤其是根据文本选中,折磨了我好长时间,在源码里猜出来的。

wxpython中设置radiobox相关使用的更多相关文章

  1. PHP 错误与异常 笔记与总结(3)PHP 配置文件(php.ini)中与错误相关的选项 与 设置错误级别

    [PHP 配置文件中与错误相关的选项 ] 选项 描述 error_reporting 设置错误报告的级别 display_errors 是否显示错误 log_errors 设置是否将错误信息记录到日志 ...

  2. 关于Makefile.am中与Build相关的变量设置 AM_CPPFLAGS

    http://tonybai.com/2010/10/26/about-variables-related-to-building-in-makefile-am/ 关于Makefile.am中与Bui ...

  3. Folx中与下载相关的参数如何设置

    Folx是一款简单易用,功能强大的MacOS专用下载管理工具.要使Folx下载/上传速度快,同时又不影响其他软件的上网使用,还能够有计划地安排下载,那么就必须对Folx进行参数设置.接下来小编详细讲解 ...

  4. 在python脚本中设置环境变量,并运行相关应用

    1. 问题 在自动化应用的时候 ,有时候环境变量与运行需要不一致.这时候有两种选择: 改变节点环境变量,使得其和运行需求保持一致: 在自动化脚本中设置环境变量,其范围只在脚本运行环境中有效. 显然,当 ...

  5. tableau中图形分析相关设置

    1.柱形堆叠图单元格顶部显示总计值(可通过参考线实现) 2.调节图形单元格的宽窄度 (ctrl + 右键/左键) 3.折线图预测区间 趋势区间线 分析中预测并不是针对所有的日期格式均其作用,比如日期格 ...

  6. wxPython中基本控件学习

    wxPython工具包提供了多种不同的窗口部件,包括了本章所提到的基本控件.我们涉及静态文本.可编辑的文本.按钮.微调.滑块.复选框.单选按钮.选择器.列表框.组合框和标尺.对于每种窗口部件,我们将提 ...

  7. wxPython中菜单、按钮学习

    ---恢复内容开始--- wx.Window 是一个基类,许多构件从它继承.包括 wx.Frame 构件.技术上这意味着,我们可以在所有的 子类中使用 wx.Window 的方法.我们这里介绍它的几种 ...

  8. Linux中设置服务自启动的三种方式

    有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务 主要用三种方式进行这一操作: ln -s                       在/etc/rc.d/rc*.d目录中建立/e ...

  9. linux中Makefile文件相关内容

    第一章.概述什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional(专业)的程序员,m ...

随机推荐

  1. 在Spring+MyBatis组合中使用事务

     通过Spring和MyBatis的组合,给出一个较为详细的实例 代码清单:配置Spring+MyBatis测试环境 <?xml version='1.0' encoding='UTF-8' ? ...

  2. linux信号量例子

    semaphore.h 提供的是 POSIX 标准定义的 semaphore 接口,而 sys/sem.h 里 提供的是符合 System V 标准的 semaphore接口 (semget, sem ...

  3. [ jenkins ] git+jenkins+maven + ansible 部署java程序

    1. 工具介绍 git:版本控制,一般都是托管到代码仓库的.如 github.coding.gitlab (本文以 coding 为例) jenkins:持续集成工具之一,也是最常用的工具,主要工作就 ...

  4. lumen伪静态路由设置示例

    lumen路由文件中的配置: $app->get('info-{tid}.html', 'ThreadController@palmInfo'); 控制器中代码示例: public functi ...

  5. 推荐linux运维必备的几本书

    首先,<鸟哥的linux私房菜> 鸟哥 其次,<linux就该这么学> 刘瑞版 然后,<CentOS linux系统运维> 张祥琳版 最后,<CentOS运维 ...

  6. python基础篇(三)

    PYTHON基础篇(三) 装饰器 A:初识装饰器 B:装饰器的原则 C:装饰器语法糖 D:装饰带参数函数的装饰器 E:装饰器的固定模式 装饰器的进阶 A:装饰器的wraps方法 B:带参数的装饰器 C ...

  7. jar 常用操作

    查看 jar 包中的文件列表,并进行重定向 jar -tvf a.jar > a.txt 更新文件到 jar 中,目录需对应 jar -uf a.jar com/a.class a.class ...

  8. [转帖]Linux运维工程师的十个基本技能点

    Linux运维工程师的十个基本技能点 https://cloud.tencent.com/developer/article/1115068   本人是Linux运维工程师,对这方面有点心得,现在我说 ...

  9. 转:路由 router-view

    原文链接: 路由 router-view 路由,其实就是指向的意思,当我点击页面上的home按钮时,页面中就要显示home的内容,如果点击页面上的about 按钮,页面中就要显示about 的内容.H ...

  10. git config 介绍

    转载. https://blog.csdn.net/liuxiao723846/article/details/83113317 Git的三个重要配置文件分别是/etc/gitconfig,${HOM ...