#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. Python - Django - 装饰器版的登陆校验

    urls.py: from django.conf.urls import url from app01 import views urlpatterns = [ url(r'^login/', vi ...

  2. IE6利用iframe遮挡 弹层 select

    ie6的老bug了,select老是会挡住 弹层里的内容. 解决办法:(box需要设置高度) <div class="box"> <!--[if IE 6]> ...

  3. intel 蓝牙驱动安装时报错

    BT_20.120.2_64_Win7.exe 安装时报错. 把系统补丁打全,就可以安装 了.

  4. linux系统卡顿 性能分析

    systemtrap 是一个内核开发者要掌握的工具. linux performance analysis 系统瓶颈性能分析软件

  5. git如何新建分支

    1) 切换到基础分支,如主干 git checkout master 2)创建并切换到新分支 git checkout -b panda git branch可以看到已经在panda分支上 3)更新分 ...

  6. 【JS】逻辑处理

    1.计算会员进度 const a = res.data.directCount(当前充值点券) / nextLevelData.map(item => item.direct_number(下一 ...

  7. 024 Android 自定义样式对话框(AlertDialog)

    1.AlertDialog介绍 AlertDialog并不需要到布局文件中创建,而是在代码中通过构造器(AlertDialog.Builder)来构造标题.图标和按钮等内容的. 常规使用步骤(具体参见 ...

  8. python gdal安装与简单使用

    原文链接:python gdal安装与简单使用 gdal安装方式一:在网址 https://www.lfd.uci.edu/~gohlke/pythonlibs/#gdal 下载对应python版本的 ...

  9. HDOJ-1100 Trees made to order

    一.题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1100 二.题目分析 对二叉树的所有形态顺序编号,编号规则是:节点数越多的编号越大:节点数相等,左子 ...

  10. oracle 常用sql 经典sql函数使用 sql语法

    各种树操作, 用来查询表中带有子父节点的信息 Oracle 树操作(select-start with-connect by-prior) select m.org_id from sm_organ ...