ComboBox 类

继承 MovieClip > UIObject 类 > UIComponent 类 > ComboBase > ComboBox

ActionScript 类名称 mx.controls.ComboBox

ComboBox 组件结合了三个单独的子组件:Button、TextInput 和 List。每个子组件的大多数方法、属性和事件都可以直接从 ComboBox 组件获得,并在 ComboBox 类的摘要表中列出。

组合框中的下拉列表是作为数组或数据提供程序提供的。如果您使用数据提供程序,列表会在运行时更改。通过切换到新的数组或数据提供程序,可以动态更改 ComboBox 数据的源。

组合框列表中的项目是按位置从数字 0 开始编排索引的。一个项目可以是以下内容之一:

如果该项目是原始数据类型而不是字符串,则会转换为字符串。如果某一项是一个对象,则其 label 属性必须是字符串,而 data 属性可以是任何 ActionScript 值。

您向其提供项的 ComboBox 方法有两个参数:labeldata,它们指的就是上述属性。返回项目的方法会将该项目作为对象返回。

组合框会延迟其下拉列表的实例化,直到用户与其进行交互。因此,组合框在第一次使用时可能响应较慢。

使用下面的代码以编程方式访问 ComboBox 组件的下拉列表并覆盖延迟:

var foo = myComboBox.dropdown;

访问下拉列表可能会导致应用程序停顿。当用户第一次与组合框进行交互,或者当上面的代码在运行时,可能会发生这种情况。

ComboBox 类的方法摘要

下表列出了 ComboBox 类的方法。

方法

说明

ComboBox.addItem()

向列表的结尾添加项目。

ComboBox.addItemAt()

向列表的结尾在指定的索引处添加项目。

ComboBox.close()

关闭下拉列表。

ComboBox.getItemAt()

返回指定索引处的项目。

ComboBox.open()

打开下拉列表。

ComboBox.removeAll()

删除列表中的所有项目。

ComboBox.removeItemAt()

删除位于列表中指定位置的项目。

ComboBox.replaceItemAt()

替换位于指定索引处的项目的内容。

ComboBox.sortItems()

使用比较函数对列表进行排序。

ComboBox.sortItemsBy()

使用每个项目的一个字段对列表进行排序。

从 UIObject 类继承的方法

下表列出了 ComboBox 类从 UIObject 类继承的方法。从 ComboBox 对象调用这些方法时,请使用 comboBoxInstance.methodName 的形式。

方法

说明

UIObject.createClassObject()

创建指定类的对象。

UIObject.createObject()

创建对象的子对象。

UIObject.destroyObject()

破坏组件实例。

UIObject.doLater()

在"属性"检查器和"组件"检查器中设置了参数之后,调用一个函数。

UIObject.getStyle()

从样式声明或对象获取样式属性。

UIObject.invalidate()

标记对象使其在到达下一个帧间隔时进行重绘。

UIObject.move()

将对象移动到要求的位置。

UIObject.redraw()

强制验证对象,以便在当前帧中绘制该对象。

UIObject.setSize()

将对象调整为所要求的大小。

UIObject.setSkin()

设置对象的外观。

UIObject.setStyle()

设置样式声明或对象的样式属性。

从 UIComponent 类继承的方法

下表列出了 ComboBox 类从 UIComponent 类继承的方法。从 ComboBox 对象调用这些方法时,请使用 comboBoxInstance.methodName 的形式。

方法

说明

UIComponent.getFocus()

返回对具有焦点的对象的引用。

UIComponent.setFocus()

将焦点设置到组件实例中。

ComboBox 类的属性摘要

下表列出了 ComboBox 类的属性。

属性

说明

ComboBox.dataProvider

列表中项目的数据模型。

ComboBox.dropdown

返回一个对组合框所包含的 List 组件的引用。

ComboBox.dropdownWidth

下拉列表的宽度(以像素为单位)。

ComboBox.editable

指明组合框是否可以编辑。

ComboBox.labelField

指明使用哪个数据字段作为下拉列表的标签。

ComboBox.labelFunction

指定一个用于计算下拉列表标签字段的函数。

ComboBox.length

只读;下拉列表的长度。

ComboBox.restrict

用户可在组合框的文本字段中输入的字符集。

ComboBox.rowCount

列表一次可以显示的最大项目数。

ComboBox.selectedIndex

下拉列表中所选项目的索引。

ComboBox.selectedItem

下拉列表中所选项目的值。

ComboBox.text

文本框中文本的字符串。

ComboBox.textField

对组合框中 TextInput 组件的引用。

ComboBox.value

文本框(可编辑)或下拉列表(静态)的值。

从 UIObject 类继承的属性

下表列出了 ComboBox 类从 UIObject 类继承的属性。从 ComboBox 对象访问这些属性时,请使用 comboBoxInstance.propertyName 的形式。

属性

说明

UIObject.bottom

只读;对象的底边缘位置(相对于其父对象的底边缘)。

UIObject.height

只读;对象的高度,以像素为单位。

UIObject.left

只读;对象的左边缘(以像素为单位)。

UIObject.right

只读。对象的右边缘位置(相对于其父对象的右边缘)。

UIObject.scaleX

一个数字,它指示对象相对于其父对象在 x 方向上的缩放因子。

UIObject.scaleY

一个数字,它指示对象相对于其父对象在 y 方向上的缩放因子。

UIObject.top

只读;对象上边缘的位置(相对于其父对象)。

UIObject.visible

一个布尔值,它指示对象是可见的 (true) 还是不可见的 (false)。

UIObject.width

只读;对象的宽度,以像素为单位。

UIObject.x

只读;对象的左边缘(以像素为单位)。

UIObject.y

只读;对象的上边缘(以像素为单位)。

从 UIComponent 类继承的属性

下表列出了 ComboBox 类从 UIComponent 类继承的属性。从 ComboBox 对象访问这些属性时,请使用 comboBoxInstance.propertyName 的形式。

属性

说明

UIComponent.enabled

指示组件是否可以接收焦点和输入。

UIComponent.tabIndex

一个数字,指示文档中组件的 Tab 键顺序。

ComboBox 类的事件摘要

下表列出了 ComboBox 类的事件。

事件

说明

ComboBox.change

当组合框的值因用户交互操作而改变时广播。

ComboBox.close

当组合框的列表开始回缩时广播。

ComboBox.enter

当按下 Enter 键时广播。

ComboBox.itemRollOut

当指针滑离一个下拉列表项时广播。

ComboBox.itemRollOver

当滑过下拉列表的一个项目时广播。

ComboBox.open

当下拉列表开始打开时广播。

ComboBox.scroll

当滚动下拉列表时广播。

从 UIObject 类继承的事件

下表列出了 ComboBox 类从 UIObject 类继承的事件。

事件

说明

UIObject.draw

当对象将要绘制它的图形时进行广播。

UIObject.hide

在对象的状态从可见变为不可见时广播。

UIObject.load

创建子对象时广播。

UIObject.move

移动了对象时广播。

UIObject.resize

在调整对象大小后广播。

UIObject.reveal

在对象的状态从不可见变为可见时广播。

UIObject.unload

卸载子对象时广播。

从 UIComponent 类继承的事件

下表列出了 ComboBox 类从 UIComponent 类继承的事件。

事件

说明

UIComponent.focusIn

当对象收到焦点时进行广播。

UIComponent.focusOut

当对象失去焦点时进行广播。

UIComponent.keyDown

当按下按键时进行广播。

UIComponent.keyUp

当松开按键时进行广播。