博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
多选框
阅读量:6241 次
发布时间:2019-06-22

本文共 2094 字,大约阅读时间需要 6 分钟。

hot3.png

 

 

#-*- coding: UTF-8 -*-import wxclass CheckBox(wx.Frame):    def __init__(self):        wx.Frame.__init__(self,None,-1,u'多选框',size=(150,200))        panel=wx.Panel(self,-1)        wx.StaticText(panel,-1,u"喜欢的水果:",(10,10),(100,20))        self.checkBox1=wx.CheckBox(panel,-1,u'苹果',(10,30),(100,20))        self.checkBox2=wx.CheckBox(panel,-1,u'香蕉',(10,50),(100,20))        self.checkBox3=wx.CheckBox(panel,-1,u'西瓜',(10,70),(100,20))        self.checkBox4=wx.CheckBox(panel,-1,u'桔子',(10,90),(100,20))        self.allCheckBox=wx.CheckBox(panel,-1,u'全选',(10,110),(100,20))        self.selectFlag=True        self.fruit=[]        self.button=wx.Button(panel,-1,u'查看',(10,140),(100,50))        self.Bind(wx.EVT_BUTTON,self.OnClick,self.button)        for checkBox in [self.checkBox1,self.checkBox2,self.checkBox3,self.checkBox4]:            self.Bind(wx.EVT_CHECKBOX,self.OnSelectSingle,checkBox)        self.Bind(wx.EVT_CHECKBOX,self.OnSelect,self.allCheckBox)    def OnSelectSingle(self,event):        checkBoxSelected=event.GetEventObject()        if checkBoxSelected.IsChecked():            self.fruit.append(checkBoxSelected.GetLabelText())        else:            self.fruit.remove(checkBoxSelected.GetLabelText())            self.selectFlag=not self.selectFlag    def OnSelect(self,event):        self.fruit=[]        for checkBox in [self.checkBox1,self.checkBox2,self.checkBox3,self.checkBox4]:            checkBox.SetValue(self.selectFlag)        if self.allCheckBox.IsChecked():            for checkBox in [self.checkBox1,self.checkBox2,self.checkBox3,self.checkBox4]:                self.fruit.append(checkBox.GetLabelText())                checkBox.Disable()        else:            for checkBox in [self.checkBox1,self.checkBox2,self.checkBox3,self.checkBox4]:                checkBox.Enable()            self.selectedFlag=not self.selectFlag    def OnClick(self,event):        str="".join(self.fruit)        wx.MessageBox(str.encode("utf -8"),u"提示")if __name__=="__main__":    app=wx.PySimpleApp()    CheckBox().Show()    app.MainLoop()

转载于:https://my.oschina.net/annieduoduo/blog/71389

你可能感兴趣的文章
关于Apt注解实践与总结【包含20篇博客】
查看>>
PAT A1004
查看>>
学习webpack4 - 第三方库的使用
查看>>
PAT A1052
查看>>
vue工程全局设置ajax的等待动效
查看>>
Sublime Text3插件安装及问题处理
查看>>
前端如何通过Nginx代理做到跨域访问API接口
查看>>
解析JavaScript"模拟事件"的注意要点
查看>>
HashMap剖析之内部结构
查看>>
被七牛云OSS对象存储测试域名回收后正确数据迁移姿势!
查看>>
简单基于spring的redis配置(单机和集群模式)
查看>>
关于 top 工具的 6 个替代方案
查看>>
第十七天-企业应用架构模式-会话状态模式
查看>>
智能直播审核方案:视频云智能业务截帧策略
查看>>
以太坊Truffle框架构建Dapp
查看>>
闭包,sync使用细节
查看>>
Vue+thinkJs博客网站(一)之vue多页面应用的webpack3配置
查看>>
PHP面试题
查看>>
拖拽上传功能的实现及原理
查看>>
Spring校验@RequestParams和@PathVariables参数
查看>>