wxPython CheckBox类

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了wxPython CheckBox类相关的知识,希望对你有一定的参考价值。

一个复选框显示一个小标记的矩形框。单击时,复选标记出现在矩形内,指示作出选择。 复选框优于单选按钮,当允许用户多选。在这种情况下,第三状态称为混合或不确定的状态,一般用在“不适用”情景。

通常情况下,一个复选框对象有两种状态(选中或未选中)。如果相应的参数将被赋予三态复选框也可以构造。

wx.CheckBox类的构造函数的参数如下 -
Wx.CheckBox(parent, id, label, pos, size, style)
以下样式参数值可以使用 -
S.N.
参数和说明
1

wx.CHK_2STATE

创建两个状态复选框。 这是默认值
2

wx.CHK_3STATE

创建三态复选框
3

wx.ALIGN_RIGHT

把一个盒子标签放在复选框的左侧

这个类有两个重要的方法 - GetState()返回true或false,取决于如果该复选框被选中或未选。SetValue()用于编程方式选择一个复选框。

wx.EVT_CHECKBOX是唯一的事件绑定可用。相关的事件处理程序将在每次框架上的任何复选框被选中或取消时调用。

实例

下面是一个简单的例子演示如何使用三个复选框。处理函数 OnChecked()识别对应的复选框,它负责事件并显示其状态。

CheckBox.py 完整源代码 ?

import wx  
 
class Example(wx.Frame): 
            
   def __init__(self, parent, title): 
      super(Example, self).__init__(parent, title = title,size = (300,200)) 
         
      self.InitUI() 
		
   def InitUI(self):    
             
      pnl = wx.Panel(self) 
		  
      self.cb1 = wx.CheckBox(pnl, label = ‘Value A‘,pos = (10,10)) 
      self.cb2 = wx.CheckBox(pnl, label = ‘Value B‘,pos = (10,40)) 
      self.cb3 = wx.CheckBox(pnl, label = ‘Value C‘,pos = (10,70)) 
		
      self.Bind(wx.EVT_CHECKBOX,self.onChecked) 
      self.Centre() 
      self.Show(True) 
      
   def onChecked(self, e): 
      cb = e.GetEventObject() 
      print cb.GetLabel(),‘ is clicked‘,cb.GetValue()
		
ex = wx.App() 
Example(None,‘CheckBox Demo - www.yiibai.com‘) 
ex.MainLoop()
上面的代码产生下面的输出 -
技术分享
技术分享

A 被点击为 True

B 被点击为 True

C 被点击为 True

B 被点击为 False



以上是关于wxPython CheckBox类的主要内容,如果未能解决你的问题,请参考以下文章

在Ubuntu中打开文件时出现wxPython错误

wxPython入门练习代码 一

wxPython TextCtrl类

wxpython中的派生面板类

wxPython 界面编程的有关事件

wxPython:当密码账号输入正确,登录界面消失并显示主界面