Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >wxpython中设置radiobox相关使用

wxpython中设置radiobox相关使用

作者头像
黯然销魂掌
发布于 2019-05-24 01:48:20
发布于 2019-05-24 01:48:20
1.3K00
代码可运行
举报
文章被收录于专栏:python爬虫日记python爬虫日记
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#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、示范如何设置初始值,尤其是根据文本选中,折磨了我好长时间,在源码里猜出来的。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-05-23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
wxPython_02_常用控件--Radio/CheckBox,Choice,Slider,SpinCtrl,Timer
wxPython各种控件用法官方手册 : http://xoomer.virgilio.it/infinity77/wxPython/widgets.html
码农帮派
2020/04/01
7370
wxPython_02_常用控件--Radio/CheckBox,Choice,Slider,SpinCtrl,Timer
wxPython_01_常用控件--Font,StaticText,StaticBitmap,Button,TextCtrl ​
wxPython各种控件用法官方手册 : http://xoomer.virgilio.it/infinity77/wxPython/widgets.html
码农帮派
2020/04/01
1.1K0
wxPython_01_常用控件--Font,StaticText,StaticBitmap,Button,TextCtrl ​
Python之GUI实现
wxPython是Python的GUI图形库。很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为wxWidgets的Python封装,然后作为模块的方式提供给用户的。
小末快跑
2019/07/03
1.5K0
Wxpython快速构建GUI窗口程序
最近学习了一下关于用wxpython来构建窗口GUI程序,关于wxFormbuilder和wxpython的用法,理解的还不是很透彻,强行此文。因此本文适合新人,请大牛们多多指教,谢谢
叉叉敌
2019/02/20
1.9K0
wxPython入门中文版 (Getting Started with wxPython)
本文翻译自http://wiki.wxpython.org/Getting%20Started 首先声明:本人还是个菜鸟,翻译只是为了学习,就当作记笔记了。水平有限,错误和疏漏在所难免,希望各路高手能够给予指导。而且简单查了一下,好像中文世界目前还没有完整的翻译 Getting Started with wxPython 的。
全栈程序员站长
2022/08/31
5.8K0
wxPython入门中文版 (Getting Started with wxPython)
编写一个网易云音乐爬虫程序
本次借助wxPython编写一个网易云音乐的爬虫程序,能够根据一个歌单链接下载其下的所有音乐
冰霜
2022/03/15
1.2K0
编写一个网易云音乐爬虫程序
Python GUI界面编程
Downloading https://files.pythonhosted.org/packages/34/41/e0e109a72966f596a5b93123d94eaabd53509ef6766fa3321b4bfadbbb14/wxPython-4.0.3-cp37-cp37m-win_amd64.whl (22.7MB)
用户7886150
2020/11/27
1.5K0
谁说Python不适合做GUI程序?wxFormBuilder上手教程
来源:https://blog.csdn.net/caiza3491/article/details/79529966
小草AI
2019/12/23
4K0
谁说Python不适合做GUI程序?wxFormBuilder上手教程
wxPython中文教程入门实例「建议收藏」
这篇文章主要为大家分享下python编程中有关wxPython的中文教程,分享一些wxPython入门实例,有需要的朋友参考下
全栈程序员站长
2022/08/26
2.2K0
python编写的串口程序
最近导师给了个GSM模块,需要通过RS232串口发送AT指令来对模块进行控制,于是看了看python的GUI设计和串口部分的资料,自己编写了一个串口发送的小程序,虽然有不少的bug,但是总体上还是能用的,先把程序留在这,以便后续修改。
py3study
2020/01/08
1.7K0
实战|教你用Python制作一款带有界面的NBA爬虫小程序
有时将代码转成带有界面的程序,会极大的方便使用,虽然在网上有很多现成的GUI系统,但是套用别人的代码,心里难免有些尴尬,所以本文将用Python爬虫结合wxpython模块构造一个NBA爬虫小软件,演示效果如下
刘早起
2020/11/16
1.1K0
实战|教你用Python制作一款带有界面的NBA爬虫小程序
wxPython_07_开发总结Frame,Panel以及一种项目架构
前一段时间用Python开发了一个教育类的PC桌面应用,边学边开发,现在陆续的将开发过程中学到的一些东西分享记录下来,项目使用了wxPython框架。
码农帮派
2020/04/01
9790
wxPython_07_开发总结Frame,Panel以及一种项目架构
Python中文编程打造翻译器
难点:在线翻译存在反爬虫技术,需进行反爬虫破解。 结果:使用中文(变量名及函数名的应用)编程验证并实现预定目标。 中-英翻译:
用户6184845
2019/11/25
2.3K0
wxpython多线程防假死与线程间传递消息
网上关于python多线程防假死与线程传递消息是几年前的,这里由于wxpython和threading模块已经更新最新,因此给出最新修改代码,能在2017年最新版的python和模块中运行。
里克贝斯
2021/05/21
1.3K0
wxpython多线程防假死与线程间传递消息
Tiknter例子3
============================================
py3study
2020/01/10
1.2K0
8.wxPython设置图像遮罩(mask)的方法
以上面这幅图画为例,嫁接昨天的桌面宠物代码,我们讲解wxPython图像处理为图像设置遮罩的方法。wxPython图像处理类有wx.Image和wx.Bitmap,其中wx.Image是一个与平台无关的类,可以加载各种格式的图形文件,而wx.Bitmap可以将图形显示在屏幕。一般先由wx.Image将图像文件加载,然后转换成wx.Bitmap对象,最后显示在屏幕上。wx.Image有两个函数可以设置图像遮罩:SetMaskColour和SetMaskFromImage,wx.Bitmap有一个函数可以设置图像遮罩:SetMaskColour。今天我们的代码就通过三个函数都实现了图片背景图像遮盖掉的目的。具体实现语句在img.SetMaskColour(255, 242,0),img.SetMaskFromImage(img,255, 242,0),self.bg.SetMaskColour((255, 242,0))三处。
用户4381798
2020/07/30
1.2K0
如何使用wxPython构建一个GUI应用程序
wxPython是Python语言的一套优秀的GUI图形库。我们可以使用Python程序很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的。
TalkPython
2019/05/24
2.8K1
5.wxPython响应鼠标点击画出棋子
今天我们为wxPython窗体设置鼠标点击事件,并在事件响应函数里画出黑白棋子。这里我们为窗体绑定wx.EVT_LEFT_UP这个事件码,来响应鼠标左键抬起事件。在事件处理函数里我们通过 event.GetPosition()函数来获取鼠标点击位置坐标,并将坐标点圆整,方便画圆形棋子时,棋子正好不偏不倚落在棋盘的交点处(后期可以加入随机数,对落子坐标进行处理,使棋子可以模拟现实落子,实现歪歪扭扭的效果)。我们采用wx.ClientDC容器来画棋子,wx.ClientDC不必设置在窗体事件中,可以随时作画,缺点是窗体重画之后会消失。
用户4381798
2020/07/30
8140
5.wxPython响应鼠标点击画出棋子
2.wxPython图形界面加入wx.Timer定时器
界面程序中加入wx.Timer定时器,可以让窗体延时执行一些动作。wx.Timer通过wx.EVT_TIMER事件来调用一个事件处理函数执行我们需要的动作,具体实现如代码所示。
用户4381798
2020/07/30
1K0
2.wxPython图形界面加入wx.Timer定时器
wxPython:Python首选的GUI库 | CSDN博文精选
跨平台的GUI工具库,较为有名的当属GTK+、Qt 和 wxWidgets 了。GTK+是C实现的,由于C语言本身不支持OOP,因而GTK+上手相当困难,写起来也较为复杂艰涩。Qt 和 wxWidgets 则是C++实现的,各自拥有庞大的用户群体。虽然我喜欢wxWidgets,但还是尽可能客观地搜集了关于Qt 和 wxWidgets 的对比评价。
AI科技大本营
2019/11/12
3.1K0
相关推荐
wxPython_02_常用控件--Radio/CheckBox,Choice,Slider,SpinCtrl,Timer
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验