wx.ComboBox可以看作是文本编框和列表框的组合,在实际使用过程中可以显示为一个具有可编辑或只读文本框、一个下拉列表框(带箭头按钮)或普通列表框。
一、组件样式
wx.CB_SIMPLE : 创建包含文本框、永久显示列表框的的组合框。在Windows系统下有效。
wx.CB_DROPDOWN : 创建包含文本框、下接列表框的组合框。
wx.CB_READONLY : 创建文本框为只读的组合框,也就是说文本框中的内容只能是通过下拉列表框或普通列表框进行选择填入。
wx.CB_SORT : 按字母顺序对列表框中的选项进行排序。
wx.TE_PROCESS_ENTER : 允许在组合框中的文本框中按下回车(Enter)键后,执行wx.EVT_TEXT_ENTER事件。
组合框样式
- 事件处理
wx.EVT_COMBOBOX : 选中组合框中下拉列表框选项时触发该事件。注意:用GetValue函数返回的是选中项目的值。
选中下拉框中选项
wx.EVT_TEXT : 组合框中文本内容发生改变时触发该事件。
文本框内容改变事件
wx.EVT_TEXT_ENTER : 当组合框样式包含wx.TE_PROCESS_ENTER时,在文本框中按下回车(Enter)键时触发该事件。
按下回车(Enter)键事件
wx.EVT_COMBOBOX_DROPDOWN : 当打开(或弹出)下拉列表框(点击带箭头按钮)时触发该事件。
打开下拉框
wx.EVT_COMBOBOX_CLOSEUP : 当关闭下拉列表框时触发该事件。
关闭下拉框
- 方法
__init__ (self, parent, id=ID_ANY, value=””, pos=DefaultPosition, size=DefaultSize, choices=[], style=0, name=ComboBoxNameStr)
构造函数
参数
parent - 父窗体。不能为空(None)。
id - 给合框标识符。默认值为wx.ID_ANY(-1),表示由系统自动分配一个唯一标识符。
value - 组合框中文本编辑框的默认文本值。
pos - 组合框位置。
size - 组合框大小。
choices - 组合框中列表框中的选项列表,是一个字符串数组。
style - 组合框样式。
name - 组合框名称。
创建给合框
FindString(self, string, caseSensitive=False)
查找与给定字符串匹配的列表框中的选项。
参数
string - 待匹配(查找)字符串
caseSensitive - 是否区分大小写(False不区分大小写,True区分大小写)
返回
如果找到选项返回对应选项的索引值(从0开始),如果找不到返回wx.NOT_FOUND(-1)。
根据字符串查找选项
GetCount(self)
返回列表框中选项数量(同属性Count)。
返回
选项数量。
获取列表框中选项数量
GetCurrentSelection(self)
返回当前选中的选项索引(同属性CurrentSelection )。
返回
当前选中的选项索引(未选中为-1)。
获取当前选中项
GetInsertionPoint(self)
返回文本框中插入字符(光标)的位置(如果焦点不在组合框,则始终返回0,同属性InsertionPoint)。
返回
文本框中插入字符(光标)的位置。
获取插入字符(光标)的位置
GetString(self, n)
返回选项索引对应的选项字符串内容。
参数
n - 选项索引(从0开始)。
返回
选项字符串内容。
获取选项字符串内容
GetStringSelection(self)
返回选中选项字符串(如果没有选中返回空字符串)。
返回
选中选项字符串。
选中选项的字符串
IsListEmpty(self)
判断组合框中的下拉列表框是否为空。
返回
下拉列表框为空返回True,否则返回False。
下拉列表框是否为空
IsTextEmpty(self)
判断组合框中的文本框是否为空。
返回
空返回True,否则返回False。
判断文本框中值是否为空
Popup(self)
手动弹出下拉列表框。
手动弹出下拉列表框
SetSelection (self, n)
手动设置选中项。
参数
n - 选中项索引(从0开始)。
手动设置选中项
SetString(self, n, text)
重新设置指定下拉选项的字符串值。
参数
n - 待设置选项索引(从0开始)。
text - 待设置字符串。
设置选项的字符串值
SetValue(self, text)
设置组合框中文本框的值。
参数
text - 待设置字符串。
设置文本框值