- wxPython 教程
- wxPython - 主页
- wxPython - 介绍
- wxPython - 环境
- wxPython - Hello World
- wxPython - GUI 构建工具
- wxPython - 主要类
- wxPython - 事件处理
- wxPython - 布局管理
- wxPython - 按钮
- wxPython - 可停靠窗口
- 多文档界面
- wxPython - 绘图 API
- wxPython - 拖放
- wxPython 资源
- wxPython - 快速指南
- wxPython - 有用资源
- wxPython - 讨论
wxPython - 复选框类
一个 复选框 显示一个标有标签的小矩形框。单击时,矩形内会出现一个对勾,表示做出选择。当允许用户做出多项选择时,复选框将优先于单选按钮。在这种情况下,第三个状态称为混合状态或未确定状态,一般用于“不适用”的情况。
通常,复选框对象有两种状态(选中或未选中)。如果给出了适当的 style 参数,也可以构造 三态复选框。
wx.CheckBox 类构造函数采用以下参数 −
Wx.CheckBox(parent, id, label, pos, size, style)
可以使用以下 style 参数值 −
| 序号 | 参数和说明 |
|---|---|
| 1 | wx.CHK_2STATE 创建两个状态的复选框。默认 |
| 2 | wx.CHK_3STATE 创建三个状态的复选框 |
| 3 | wx.ALIGN_RIGHT 将一个框标签放置在复选框的左边 |
此类有两种重要的方法 - GetState() 根据复选框是否被选中返回 true 或 false。SetValue() 用于以编程方式选择复选框。
wx.EVT_CHECKBOX 是唯一可用的事件绑定器。每次选中或取消选中窗体上的任何复选框时,都会调用关联的事件处理程序。
实例
以下是一个简单的示例,演示如何使用三个复选框。处理函数 OnChecked() 识别导致该事件并显示其状态的复选框。
完整代码如下 −
import wx
class Example(wx.Frame):
def __init__(self, parent, title):
super(Example, self).__init__(parent, title = title,size = (200,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')
ex.MainLoop()
上述代码会生成以下输出 −
值 A 被单击 True
值 B 被单击 True
值 C 被单击 True
值 B 被单击 False
wxpython_major_classes.htm
广告