通常情况下,一个复选框对象有两种状态(选中或未选中)。如果相应的参数将被赋予三态复选框也可以构造。
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
原文:http://www.cnblogs.com/chengxuyuan326260/p/6360428.html