| 包 | fl.controls |
| 类 | public class ComboBox |
| 继承 | ComboBox UIComponent Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
| 实现 | IFocusManagerComponent |
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
另请参见
| 属性 | 定义方 | ||
|---|---|---|---|
![]() | accessibilityProperties : AccessibilityProperties
此显示对象的当前辅助功能选项。
| DisplayObject | |
![]() | alpha : Number
指示指定对象的 Alpha 透明度值。
| DisplayObject | |
![]() | blendMode : String
BlendMode 类中的一个值,用于指定要使用的混合模式。
| DisplayObject | |
![]() | buttonMode : Boolean
指定此 sprite 的按钮模式。
| Sprite | |
![]() | cacheAsBitmap : Boolean
如果设置为 true,则 Flash Player 将缓存显示对象的内部位图表示形式。
| DisplayObject | |
![]() | constructor : Object
对类对象或给定对象实例的构造函数的引用。
| Object | |
![]() | contextMenu : ContextMenu
指定与此对象相关联的上下文菜单。
| InteractiveObject | |
| dataProvider : DataProvider
获取或设置要查看的项目列表的数据模型。
| ComboBox | ||
![]() | doubleClickEnabled : Boolean
指定此对象是否接收 doubleClick 事件。
| InteractiveObject | |
| dropdown : List
[read-only]
获取对 ComboBox 组件所包含的 List 组件的引用。
| ComboBox | ||
| dropdownWidth : Number
获取或设置下拉列表的最大宽度,以像素为单位。
| ComboBox | ||
![]() | dropTarget : DisplayObject
[read-only]
指定拖动 sprite 时经过的显示对象,或放置 sprite 的显示对象。
| Sprite | |
| editable : Boolean
获取或设置一个布尔值,该值指示 ComboBox 组件为可编辑还是只读。
| ComboBox | ||
![]() | enabled : Boolean
获取或设置一个值,该值指示组件是否可以接受用户交互。
| UIComponent | |
![]() | filters : Array
包含当前与显示对象关联的每个滤镜对象的索引数组。
| DisplayObject | |
![]() | focusEnabled : Boolean
获取或设置一个布尔值,该值指示组件是否可以在用户单击它后获得焦点。
| UIComponent | |
![]() | focusManager : IFocusManager
获取或设置为此组件及其同级组件控制焦点的 FocusManager。
| UIComponent | |
![]() | focusRect : Object
指定此对象是否显示焦点矩形。
| InteractiveObject | |
![]() | graphics : Graphics
[read-only]
指定属于此 sprite 的 Graphics 对象,在此 sprite 中可执行矢量绘画命令。
| Sprite | |
![]() | height : Number
获取或设置组件的高度,以像素为单位。
| UIComponent | |
![]() | hitArea : Sprite
指定一个 sprite 用作另一个 sprite 的点击区域。
| Sprite | |
| labelField : String
获取或设置 dataProvider 对象中的字段名称,该字段名称将显示为 TextInput 字段和下拉列表的标签。
| ComboBox | ||
| labelFunction : Function
获取或设置用于获得项的标签的函数。
| ComboBox | ||
| length : int
[read-only]
获取列表中的项目数。
| ComboBox | ||
![]() | loaderInfo : LoaderInfo
[read-only]
返回一个 LoaderInfo 对象,其中包含加载此显示对象所属的文件的相关信息。
| DisplayObject | |
![]() | mask : DisplayObject
调用显示对象被指定的 mask 对象遮罩。
| DisplayObject | |
![]() | mouseChildren : Boolean
确定对象的子项是否支持鼠标。
| DisplayObjectContainer | |
![]() | mouseEnabled : Boolean
指定此对象是否接收鼠标消息。
| InteractiveObject | |
![]() | mouseFocusEnabled : Boolean
获取或设置一个值,该值指示组件是否可以在用户单击它后获得焦点。
| UIComponent | |
![]() | mouseX : Number
[read-only]
指示鼠标位置的 x 坐标,以像素为单位。
| DisplayObject | |
![]() | mouseY : Number
[read-only]
指示鼠标位置的 y 坐标,以像素为单位。
| DisplayObject | |
![]() | name : String
指示 DisplayObject 的实例名称。
| DisplayObject | |
![]() | numChildren : int
[read-only]
返回此对象的子项数目。
| DisplayObjectContainer | |
![]() | opaqueBackground : Object
指定显示对象是否由于具有某种背景颜色而不透明。
| DisplayObject | |
![]() | parent : DisplayObjectContainer
[read-only]
指示包含此显示对象的 DisplayObjectContainer 对象。
| DisplayObject | |
| prompt : String
获取或设置对 ComboBox 组件的提示。
| ComboBox | ||
![]() | prototype : Object
[static]
对类或函数对象的原型对象的引用。
| Object | |
| restrict : String
获取或设置用户可以在文本字段中输入的字符。
| ComboBox | ||
![]() | root : DisplayObject
[read-only]
对于加载的 SWF 文件中的显示对象,root 属性是此 SWF 文件所表示的显示列表树结构部分中的顶级显示对象。
| DisplayObject | |
![]() | rotation : Number
指示 DisplayObject 实例距其原始方向的旋转程度,以度为单位。
| DisplayObject | |
| rowCount : uint
获取或设置没有滚动条的下拉列表中可显示的最大行数。
| ComboBox | ||
![]() | scale9Grid : Rectangle
当前有效的缩放网格。
| DisplayObject | |
![]() | scaleX : Number
将组件的当前宽度与缩放系数相乘。
| UIComponent | |
![]() | scaleY : Number
将组件的当前高度与缩放系数相乘。
| UIComponent | |
![]() | scrollRect : Rectangle
显示对象的滚动矩形范围。
| DisplayObject | |
| selectedIndex : int
获取或设置单选列表中的选定项目的索引。
| ComboBox | ||
| selectedItem : Object
获取或设置下拉列表中所选项目的值。
| ComboBox | ||
| selectedLabel : String
[read-only]
获取显示在 ComboBox 组件的 TextInput 部分中的字符串。
| ComboBox | ||
![]() | soundTransform : SoundTransform
控制此 sprite 中的声音。
| Sprite | |
![]() | stage : Stage
[read-only]
显示对象的舞台。
| DisplayObject | |
![]() | tabChildren : Boolean
确定对象的子项是否支持 Tab 键。
| DisplayObjectContainer | |
![]() | tabEnabled : Boolean
指定此对象是否遵循 Tab 键顺序。
| InteractiveObject | |
![]() | tabIndex : int
指定 SWF 文件中的对象按 Tab 键顺序排列。
| InteractiveObject | |
| text : String
获取或设置可编辑 ComboBox 组件中文本框所包含的文本。
| ComboBox | ||
| textField : TextInput
[read-only]
获取对 ComboBox 组件所包含的 TextInput 组件的引用。
| ComboBox | ||
![]() | textSnapshot : TextSnapshot
[read-only]
返回此 DisplayObjectContainer 实例的 TextSnapshot 对象。
| DisplayObjectContainer | |
![]() | transform : Transform
一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。
| DisplayObject | |
![]() | useHandCursor : Boolean
布尔值,指示当鼠标滑过其 buttonMode 属性设置为 true 的 sprite 时是否显示手指形(手形光标)。
| Sprite | |
| value : String
[read-only]
获取可编辑 ComboBox 组件中的项目的标签。
| ComboBox | ||
![]() | version : String = "3.0.0.13"
组件的版本号。
| UIComponent | |
![]() | visible : Boolean
获取或设置一个值,该值指示当前组件实例是否可见。
| UIComponent | |
![]() | width : Number
获取或设置组件的宽度(以像素为单位)。
| UIComponent | |
![]() | x : Number
获取或设置 x 坐标,该坐标表示组件在其父容器内沿 x 轴的位置。
| UIComponent | |
![]() | y : Number
获取或设置 y 坐标,该坐标表示组件在其父容器内沿 y 轴的位置。
| UIComponent | |
| 方法 | 定义方 | ||
|---|---|---|---|
|
ComboBox()
创建新的 ComboBox 组件实例。
| ComboBox | ||
![]() |
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。
| DisplayObjectContainer | |
![]() |
将一个 DisplayObject 子实例添加到该 DisplayObjectContainer 实例中。
| DisplayObjectContainer | |
![]() |
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
使用 EventDispatcher 对象注册事件侦听器对象,以使侦听器能够接收事件通知。
| EventDispatcher | |
|
向项目列表的末尾追加项目。
| ComboBox | ||
|
在指定索引位置处将项目插入列表。
| ComboBox | ||
![]() |
指示安全限制是否会导致出现以下情况:在列表中忽略了使用指定 point 点调用 DisplayObjectContainer.getObjectsUnderPoint() 方法时返回的所有显示对象。
| DisplayObjectContainer | |
![]() |
删除此组件实例中的样式属性。
| UIComponent | |
|
关闭下拉列表。
| ComboBox | ||
![]() |
确定指定显示对象是 DisplayObjectContainer 实例的子项还是该实例本身。
| DisplayObjectContainer | |
![]() |
将事件调度到事件流中。
| EventDispatcher | |
![]() |
在此组件上显示或隐藏焦点指示符。
| UIComponent | |
![]() |
启动立即绘制操作,但不像 invalidateNow 那样使全部设置失效。
| UIComponent | |
![]() |
返回一个矩形,该矩形定义相对于 targetCoordinateSpace 对象坐标系的显示对象区域。
| DisplayObject | |
![]() |
返回位于指定索引处的子显示对象实例。
| DisplayObjectContainer | |
![]() |
返回具有指定名称的子显示对象。
| DisplayObjectContainer | |
![]() |
返回 DisplayObject 的 child 实例的索引位置。
| DisplayObjectContainer | |
![]() |
检索当前具有焦点的对象。
| UIComponent | |
|
检索指定索引处的项目。
| ComboBox | ||
![]() |
返回对象的数组,这些对象位于指定点下,并且是该 DisplayObjectContainer 实例的子项(或孙子项,依此类推)。
| DisplayObjectContainer | |
![]() |
返回一个矩形,该矩形根据 targetCoordinateSpace 参数定义的坐标系定义显示对象的边界,但不包括形状上的任何笔触。
| DisplayObject | |
![]() |
检索组件的样式查找链中设置的样式属性。
| UIComponent | |
|
[static]
检索当前组件的默认样式映射。
| ComboBox | ||
![]() |
将 point 对象从舞台(全局)坐标转换为显示对象的(本地)坐标。
| DisplayObject | |
![]() |
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。
| EventDispatcher | |
![]() |
指示对象是否已经定义了指定的属性。
| Object | |
![]() |
计算显示对象,以确定它是否与 obj 显示对象重叠或相交。
| DisplayObject | |
![]() |
计算显示对象,以确定它是否与 x 和 y 参数指定的点重叠或相交。
| DisplayObject | |
![]() |
在未另外指定的情况下,将属性标记为无效,并在下一帧上重绘组件。
| UIComponent | |
![]() |
指示 Object 类的实例是否在指定为参数的对象的原型链中。
| Object | |
|
基于 labelField 和 labelFunction 属性检索渲染器将为给定数据对象显示的字符串。
| ComboBox | ||
![]() |
将 point 对象从显示对象的(本地)坐标转换为舞台(全局)坐标。
| DisplayObject | |
![]() |
[static]
将多个类的样式合并到一个对象中。
| UIComponent | |
![]() |
将组件移动到其父项内的指定位置。
| UIComponent | |
|
打开下拉列表。
| ComboBox | ||
![]() |
指示指定的属性是否存在、是否可枚举。
| Object | |
|
删除列表中的所有项目。
| ComboBox | ||
![]() |
从 DisplayObjectContainer 实例的子列表中删除指定的 child DisplayObject 实例。
| DisplayObjectContainer | |
![]() |
从 DisplayObjectContainer 的子列表中指定的 index 位置删除子 DisplayObject。
| DisplayObjectContainer | |
![]() |
从 EventDispatcher 对象中删除侦听器。
| EventDispatcher | |
|
从列表中删除指定项目。
| ComboBox | ||
|
删除指定索引位置处的项目。
| ComboBox | ||
|
用其它项目替换指定索引位置处的项目。
| ComboBox | ||
![]() |
更改现有子项在显示对象容器中的位置。
| DisplayObjectContainer | |
![]() |
设置此组件的焦点。
| UIComponent | |
![]() |
设置循环操作动态属性的可用性。
| Object | |
![]() |
将组件设置为指定宽度和高度。
| UIComponent | |
![]() |
对此组件实例设置样式属性。
| UIComponent | |
|
对当前数据提供者的元素进行排序。
| ComboBox | ||
|
以当前数据提供者的一个或多个字段为依据对其元素进行排序。
| ComboBox | ||
![]() |
允许用户拖动指定的 Sprite。
| Sprite | |
![]() |
结束 startDrag() 方法。
| Sprite | |
![]() |
交换两个指定子对象的 Z 轴顺序(从前到后顺序)。
| DisplayObjectContainer | |
![]() |
在子级列表中两个指定的索引位置,交换子对象的 Z 轴顺序(前后顺序)。
| DisplayObjectContainer | |
![]() |
返回指定对象的字符串表示形式。
| Object | |
![]() |
验证并更新此对象的属性和布局,如果需要的话重绘对象。
| UIComponent | |
![]() |
返回指定对象的原始值。
| Object | |
![]() |
检查是否用此 EventDispatcher 对象或其任何始祖为指定事件类型注册了事件侦听器。
| EventDispatcher | |
| 事件 | 摘要 | 定义方 | ||
|---|---|---|---|---|
![]() | Flash Player 获得操作系统焦点并变为活动状态时调度。 | EventDispatcher | ||
![]() | 将显示对象添加到显示列表中时调度。 | DisplayObject | ||
![]() | 在将显示对象直接添加到舞台显示列表或将包含显示对象的子树添加至舞台显示列表中时调度。 | DisplayObject | ||
| 当用户更改 ComboBox 组件中的选定内容时调度,或者如果 ComboBox 组件可编辑,每当用户在文本字段中键击时调度。 | ComboBox | |||
![]() | 用户在同一 InteractiveObject 上按下并释放用户指针设备的主按钮时调度。 | InteractiveObject | ||
| 当因任何原因而取消下拉列表时调度。 | ComboBox | |||
![]() | Flash Player 失去操作系统焦点并变为非活动状态时调度。 | EventDispatcher | ||
![]() | 如果 InteractiveObject 的 doubleClickEnabled 标志设置为 true,当用户在该对象上快速连续按下两次并释放指针设备的主按钮时调度。 | InteractiveObject | ||
| 在以下情况下调度:editable 属性设置为 true,并且用户在可编辑文本字段中键入时按下 Enter。 | ComboBox | |||
![]() | 播放头进入新帧时调度。 | DisplayObject | ||
![]() | 显示对象获得焦点后调度。 | InteractiveObject | ||
![]() | 显示对象失去焦点后调度。 | InteractiveObject | ||
![]() | 在组件可见性从可见改为不可见以后调度。 | UIComponent | ||
| 当用户将指针滑离组件中的项目时调度。 | ComboBox | |||
| 当用户将指针滑过组件中的项目时调度。 | ComboBox | |||
![]() | 用户按下某个键时调度。 | InteractiveObject | ||
![]() | 用户尝试使用键盘导航更改焦点时调度。 | InteractiveObject | ||
![]() | 用户释放某个键时调度。 | InteractiveObject | ||
![]() | 在 Flash Player 窗口中,用户在 InteractiveObject 实例上按下指针设备按钮时调度。 | InteractiveObject | ||
![]() | 用户尝试使用指针设备更改焦点时调度。 | InteractiveObject | ||
![]() | 用户移动 InteractiveObject 上的指针设备时调度。 | InteractiveObject | ||
![]() | 用户将指针设备从 InteractiveObject 实例上移开时调度。 | InteractiveObject | ||
![]() | 在 Flash Player 窗口中,用户将指针设备移动到 InteractiveObject 实例上时调度。 | InteractiveObject | ||
![]() | 在 Flash Player 窗口中,用户在 InteractiveObject 实例上释放指针设备按钮时调度。 | InteractiveObject | ||
![]() | 在 Flash Player 窗口中,鼠标滚轮滚动到 InteractiveObject 实例上时调度。 | InteractiveObject | ||
![]() | 在移动组件以后调度。 | UIComponent | ||
| 当用户单击下拉按钮以显示下拉列表时调度。 | ComboBox | |||
![]() | 将要从显示列表中删除显示对象时调度。 | DisplayObject | ||
![]() | 在从显示列表中直接删除显示对象或删除包含显示对象的子树时调度。 | DisplayObject | ||
![]() | 将要更新和呈现显示列表时调度。 | DisplayObject | ||
![]() | 在调整组件大小以后调度。 | UIComponent | ||
![]() | 用户将指针设备从 InteractiveObject 实例上移开时调度。 | InteractiveObject | ||
![]() | 用户将指针设备移动到 InteractiveObject 实例上时调度。 | InteractiveObject | ||
| 当用户滚动 ComboBox 组件的下拉列表时调度。 | ComboBox | |||
![]() | 在组件可见性从不可见改为可见以后调度。 | UIComponent | ||
![]() | 对象的 tabChildren 标志值发生更改时调度。 | InteractiveObject | ||
![]() | 对象的 tabEnabled 标志发生更改时调度。 | InteractiveObject | ||
![]() | 对象的 tabIndex 属性值发生更改时调度。 | InteractiveObject | ||
| 样式 | 说明 | 定义方 | ||
|---|---|---|---|---|
|
buttonWidth
| 类型: Number 格式: Length 用于分隔组件的右边缘和代表所选项目的文本的空白(以像素为单位)。 该按钮是背景外观的一部分。 默认值为 24. | ComboBox | ||
|
cellRenderer
| 类型: Class 为组件中的每个项目提供单元格渲染器的类。. 默认值为 fl.controls.listClasses.CellRenderer. | ComboBox | ||
|
contentPadding
| 类型: Number 格式: Length 内容(组件和滚动条)和背景外边缘之间的填充(以像素为单位)。. 默认值为 3. | ComboBox | ||
|
disabledAlpha
| 类型: Class 当 enabled 属性为 false 时将列表设置为的 Alpha 值。. 默认值为 0.5. | ComboBox | ||
|
disabledSkin
| 类型: Class 类的名称,该类提供当 ComboBox 组件的 enabled 属性设置为 false 时显示在该组件中的背景。 默认值为 ComboBox_disabledSkin. | ComboBox | ||
![]() | 类型: flash.text.TextFormat 用于在禁用了按钮的情况下呈现组件标签的 TextFormat 对象。 默认值为 TextFormat("_sans", 11, 0x999999, false, false, false, '', '', TextFormatAlign.LEFT, 0, 0, 0, 0). | UIComponent | ||
|
downArrowDisabledSkin
| 类型: Class 类的名称,该类用作当禁用了滚动条时滚动条的向下箭头按钮的外观。 如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。. 默认值为 ScrollArrowDown_disabledSkin. | ComboBox | ||
|
downArrowDownSkin
| 类型: Class 类的名称,该类用作当单击滚动条的向下箭头按钮时该按钮的外观。 如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。. 默认值为 ScrollArrowDown_downSkin. | ComboBox | ||
|
downArrowOverSkin
| 类型: Class 类的名称,该类用作当鼠标指针在滚动条的向下箭头按钮上方时该按钮的外观。 如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。. 默认值为 ScrollArrowDown_overSkin. | ComboBox | ||
|
downArrowUpSkin
| 类型: Class 类的名称,该类用作滚动条的向下箭头按钮的外观。 如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。. 默认值为 ScrollArrowDown_upSkin. | ComboBox | ||
|
downSkin
| 类型: Class 类的名称,该类提供当按下鼠标按键时 ComboBox 组件中的背景。 默认值为 ComboBox_downSkin. | ComboBox | ||
|
embedFonts
| 类型: Boolean 指示是否使用嵌入字体轮廓呈现文本字段。 如果该值为 true,则 Flash Player 使用嵌入字体轮廓呈现文本字段。 如果该值为 false,则 Flash Player 使用设备字体呈现文本字段。 如果将文本字段的 false. | ComboBox | ||
![]() | 类型: Number 格式: Length 用于分隔组件的外边框和焦点指示符的外边框的填充(以像素为单位)。 默认值为 2. | UIComponent | ||
![]() | 类型: Class 用于显示焦点指示符的外观。 默认值为 focusRectSkin. | UIComponent | ||
|
overSkin
| 类型: Class 类的名称,该类提供当鼠标光标位于 ComboBox 组件上方时显示在该组件中的背景。 默认值为 ComboBox_overSkin. | ComboBox | ||
|
repeatDelay
| 类型: Number 格式: Time 在第一次调度 buttonDown 事件之后、发送第二个 buttonDown 事件之前等待的毫秒数。. 默认值为 500. | ComboBox | ||
|
repeatInterval
| 类型: Number 格式: Time 在由 repeatDelay 样式指定的延迟之后调度的 buttonDown 事件之间的间隔(以毫秒为单位)。. 默认值为 35. | ComboBox | ||
![]() | 类型: flash.text.TextFormat 用于呈现组件标签的 TextFormat 对象。 默认值为 TextFormat("_sans", 11, 0x000000, false, false, false, '', '', TextFormatAlign.LEFT, 0, 0, 0, 0). | UIComponent | ||
|
textPadding
| 类型: Number 格式: Length 用于分隔边框和代表所选项目的文本的空白(以像素为单位)。 默认值为 3. | ComboBox | ||
|
thumbArrowUpSkin
| 类型: Class 类的名称,该类用作滚动条的缩略图的外观。. 默认值为 ScrollThumb_upSkin. | ComboBox | ||
|
thumbDisabledSkin
| 类型: Class 用于指示缩略图的禁用状态的外观。. 默认值为 ScrollThumb_upSkin. | ComboBox | ||
|
thumbDownSkin
| 类型: Class 类的名称,该类用作当单击滚动条的缩略图时该缩略图的外观。. 默认值为 ScrollThumb_downSkin. | ComboBox | ||
|
thumbIcon
| 类型: Class 类的名称,该类用作滚动条的缩略图的图标。. 默认值为 ScrollBar_thumbIcon. | ComboBox | ||
|
thumbOverSkin
| 类型: Class 类的名称,该类用作当鼠标指针在滚动条的缩略图上方时该缩略图的外观。. 默认值为 ScrollThumb_overSkin. | ComboBox | ||
|
trackDisabledSkin
| 类型: Class 用于指示被禁用轨道的外观。. 默认值为 ScrollTrack_Skin. | ComboBox | ||
|
trackDownSkin
| 类型: Class 用于指示被禁用外观的按下状态的外观。. 默认值为 ScrollTrack_Skin. | ComboBox | ||
|
trackOverSkin
| 类型: Class 用于指示滚动轨道的鼠标悬停状态的外观。. 默认值为 ScrollTrack_Skin. | ComboBox | ||
|
trackUpSkin
| 类型: Class 用于指示滚动轨道的鼠标松开状态的外观。. 默认值为 ScrollTrack_Skin. | ComboBox | ||
|
upArrowDisabledSkin
| 类型: Class 类的名称,该类用作当禁用了滚动条时滚动条的向上箭头按钮的外观。 如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。. 默认值为 ScrollArrowUp_disabledSkin. | ComboBox | ||
|
upArrowDownSkin
| 类型: Class 类的名称,该类用作当单击滚动条的向上箭头按钮时该按钮的外观。 如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。. 默认值为 ScrollArrowUp_downSkin. | ComboBox | ||
|
upArrowOverSkin
| 类型: Class 类的名称,该类用作当鼠标指针在滚动条的向上箭头按钮上方时该按钮的外观。 如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。. 默认值为 ScrollArrowUp_overSkin. | ComboBox | ||
|
upArrowUpSkin
| 类型: Class 类的名称,该类用作滚动条的向上箭头按钮的外观。 如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。. 默认值为 ScrollArrowUp_upSkin. | ComboBox | ||
|
upSkin
| 类型: Class 提供 ComboBox 组件背景的类的名称。 默认值为 ComboBox_upSkin. | ComboBox | ||
| dataProvider | 属性 |
dataProvider:DataProvider [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
public function get dataProvider():DataProvider
public function set dataProvider(value:DataProvider):void
另请参见
import fl.controls.ComboBox;
import fl.data.DataProvider;
var dp:DataProvider = new DataProvider();
var cb:ComboBox = new ComboBox();
cb.dataProvider = dp;
addChild(cb);
var counter = 0;
var t:Timer = new Timer(500);
t.addEventListener(TimerEvent.TIMER,addAnotherItem);
t.start();
function addAnotherItem(e:TimerEvent = null):void {
dp.addItem( { label: "Item " + counter++ } );
}| dropdown | 属性 |
dropdown:List [read-only]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取对 ComboBox 组件所包含的 List 组件的引用。 直到必须显示 List 子组件时才会在 ComboBox 内将其实例化。 但是,访问 dropdown 属性时会创建列表。
public function get dropdown():List
| dropdownWidth | 属性 |
dropdownWidth:Number [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取或设置下拉列表的最大宽度,以像素为单位。 此属性的默认值为 ComboBox 组件的宽度(TextInput 实例的宽度加上 BaseButton 实例的宽度)。
默认值为 100.
public function get dropdownWidth():Number
public function set dropdownWidth(value:Number):void
dropdownWidth 属性:
import fl.controls.ComboBox;
import fl.controls.Slider;
import fl.events.SliderEvent;
var mySlider:Slider = new Slider();
mySlider.minimum = 50;
mySlider.maximum = 150;
mySlider.liveDragging = true;
mySlider.snapInterval = 5;
mySlider.tickInterval = 10;
mySlider.addEventListener(SliderEvent.CHANGE, changeHandler);
mySlider.move(10, 10);
addChild(mySlider);
var myComboBox:ComboBox = new ComboBox();
myComboBox.addItem({label:"Item A"});
myComboBox.addItem({label:"Item B"});
myComboBox.move(10, 30);
addChild(myComboBox);
mySlider.value = myComboBox.dropdownWidth;
function changeHandler(event:SliderEvent):void {
myComboBox.dropdownWidth = event.value;
}
dropdownWidth 属性:
import fl.controls.ComboBox;
var myComboBox:ComboBox = new ComboBox();
myComboBox.addItem({label:"The quick brown fox"});
myComboBox.addItem({label:"Lorem ipsum"});
myComboBox.addItem({label:"Little Miss Muffet"});
myComboBox.addItem({label:"Goldilocks and the three bears"});
myComboBox.addItem({label:"Jack and Jill"});
myComboBox.move(10, 30);
addChild(myComboBox);
var maxLength:Number = 0;
var i:uint;
for (i = 0; i < myComboBox.length; i++) {
myComboBox.selectedIndex = i;
myComboBox.drawNow();
var currText:String = myComboBox.text;
var currWidth:Number = myComboBox.textField.textWidth;
maxLength = Math.max(currWidth, maxLength);
trace(currText, currWidth, maxLength);
}
myComboBox.selectedIndex = -1;
myComboBox.dropdownWidth = maxLength + 20;
myComboBox.open();
| editable | 属性 |
editable:Boolean [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取或设置一个布尔值,该值指示 ComboBox 组件为可编辑还是只读。 true 值指示 ComboBox 组件可编辑;false 值指示该组件不可编辑。
在可编辑 ComboBox 组件中,用户可以在文本框中输入下拉列表中未显示的值。 文本框显示列表中的项目的文本。 如果 ComboBox 不可编辑,则不能在文本框中输入文本。
默认值为 false.
public function get editable():Boolean
public function set editable(value:Boolean):void
enter 事件时向数据提供者添加自定义项目:
import fl.controls.ComboBox;
import fl.data.DataProvider;
import fl.events.ComponentEvent;
var dp:DataProvider = new DataProvider();
var myComboBox:ComboBox = new ComboBox;
myComboBox.dataProvider = dp;
myComboBox.editable = true;
myComboBox.addEventListener(ComponentEvent.ENTER, enterHandler);
myComboBox.move(10, 10);
addChild(myComboBox);
function enterHandler(event:ComponentEvent):void {
var myCB:ComboBox = event.currentTarget as ComboBox;
dp.addItem({label:myCB.text});
myCB.text = "";
myCB.sortItemsOn("label", Array.CASEINSENSITIVE);
}
| labelField | 属性 |
labelField:String [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
dataProvider 对象中的字段名称,该字段名称将显示为 TextInput 字段和下拉列表的标签。
默认情况下,组件将显示各 dataProvider 项目的 label 属性。 如果 dataProvider 项目不包含 label 属性,则可以设置 labelField 属性以使用其它属性。
注意:labelField 属性不在 labelFunction 属性设置为回调函数时使用。
默认值为 "label".
public function get labelField():String
public function set labelField(value:String):void
另请参见
labelField 属性以设置自定义标签字段:
import fl.controls.ComboBox;
import fl.data.DataProvider;
var dp:DataProvider = new DataProvider();
dp.addItem({firstName:"Jane", lastName:"Doe"});
dp.addItem({firstName:"Bill", lastName:"Smith"});
dp.addItem({firstName:"Tim", lastName:"Jones"});
dp.sortOn(["firstName","lastName"]);
var myComboBox:ComboBox = new ComboBox();
myComboBox.dataProvider = dp;
myComboBox.labelField = "firstName";
myComboBox.move(10, 10);
addChild(myComboBox);
| labelFunction | 属性 |
labelFunction:Function [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
默认情况下,组件将显示 dataProvider 项目的 label 属性。 但某些数据集可能没有 label 字段,或者没有不需修改其值即可用作标签的字段。 例如,某给定数据集可能存储了全名,但将全名分开保存在 lastName 和 firstName 字段中。 在这种情况下,此属性可能用来设置一个回调函数,该函数将 lastName 和 firstName 字段的值连接在一起成为全名字符串以供显示。
注意:labelField 属性不在 labelFunction 属性设置为回调函数时使用。
public function get labelFunction():Function
public function set labelFunction(value:Function):void
另请参见
labelFunction 属性设置为一个函数,该函数为要显示在每个单元格中的字符串设置格式:
import fl.data.DataProvider;
import fl.controls.List;
var myDataProvider:DataProvider = new DataProvider();
myDataProvider.addItem({name:"User A", price:0.43});
myDataProvider.addItem({name:"User B", price:0.34});
var users:List = new List();
users.dataProvider = myDataProvider;
users.labelFunction = myLabelFunction;
addChild(users);
function myLabelFunction(item:Object):String {
return item.name + " ($" + item.price.toFixed(2) + ")";
}labelField 属性以设置自定义标签字段:
import fl.controls.ComboBox;
import fl.data.DataProvider;
var dp:DataProvider = new DataProvider();
dp.addItem({firstName:"Jane", lastName:"Doe"});
dp.addItem({firstName:"Bill", lastName:"Smith"});
dp.addItem({firstName:"Tim", lastName:"Jones"});
dp.sortOn(["lastName", "firstName"]);
var myComboBox:ComboBox = new ComboBox();
myComboBox.dataProvider = dp;
myComboBox.labelFunction = nameLabelFunction;
myComboBox.move(10, 10);
addChild(myComboBox);
function nameLabelFunction(item:Object):String {
return item.lastName + ", " + item.firstName;
}
| length | 属性 |
length:int [read-only]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取列表中的项目数。 此属性属于 List 组件,但是不能从 ComboBox 实例进行访问。
默认值为 0.
public function get length():int
另请参见
rowCount 属性:
import fl.controls.ComboBox;
var myComboBox:ComboBox = new ComboBox();
myComboBox.addItem({label:"Item A"});
myComboBox.addItem({label:"Item B"});
myComboBox.addItem({label:"Item C"});
myComboBox.addItem({label:"Item D"});
myComboBox.addItem({label:"Item E"});
myComboBox.addItem({label:"Item F"});
myComboBox.rowCount = myComboBox.length / 2;
addChild(myComboBox);
rowCount 属性:
import fl.controls.ComboBox;
import fl.data.DataProvider;
var dp:DataProvider = new DataProvider();
dp.addItem({label:"Item A"});
dp.addItem({label:"Item B"});
dp.addItem({label:"Item C"});
dp.addItem({label:"Item D"});
dp.addItem({label:"Item E"});
dp.addItem({label:"Item F"});
var myComboBox:ComboBox = new ComboBox();
myComboBox.dataProvider = dp;
myComboBox.rowCount = myComboBox.length / 2;
addChild(myComboBox);
| prompt | 属性 |
prompt:String [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取或设置对 ComboBox 组件的提示。 此提示是一个字符串,当 selectedIndex 为 -1 时,会显示在 ComboBox 的 TextInput 部分中。 它通常是一个类似于“Select one...”的字符串。 如果未设置提示,则 ComboBox 组件将 selectedIndex 属性设置为 0 并在 dataProvider 属性中显示第一个项目。
默认值为 "".
public function get prompt():String
public function set prompt(value:String):void
prompt 属性并调整组合框的大小以适合提示文本的宽度:
import fl.controls.ComboBox;
var cbStyles:Object = ComboBox.getStyleDefinition();
var bW:Number = cbStyles.buttonWidth as Number
var myComboBox:ComboBox = new ComboBox();
myComboBox.prompt = "Please select an option...";
myComboBox.addItem({label:"Option 1"});
myComboBox.addItem({label:"Option 2"});
myComboBox.drawNow();
myComboBox.width = myComboBox.textField.textWidth + 35;
myComboBox.dropdownWidth = myComboBox.width - bW;
myComboBox.move(10, 10);
addChild(myComboBox);
prompt 属性:
import fl.controls.ComboBox;
import fl.data.DataProvider;
var dp:DataProvider = new DataProvider();
dp.addItem({label:"Getting Started"});
dp.addItem({label:"New Features"});
dp.addItem({label:"ActionScript"});
dp.addItem({label:"Components"});
dp.sortOn("label", Array.CASEINSENSITIVE);
var myComboBox:ComboBox = new ComboBox();
myComboBox.prompt = "Topics (" + dp.length + ")";
myComboBox.dataProvider = dp;
myComboBox.width = 150;
myComboBox.move(10, 10);
addChild(myComboBox);
| restrict | 属性 |
restrict:String [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取或设置用户可以在文本字段中输入的字符。 如果 restrict 属性的值为一串字符,则只能在文本字段中输入该字符串中的字符。 字符串的读取顺序为从左到右。 如果 restrict 属性的值为 null,则可以输入任何字符。 如果 restrict 属性的值为空字符串 (""),则不能输入任何字符。 可以使用连字符 (-) 指定一个范围。 它只限制用户交互;脚本可将任何字符放入文本字段中。
默认值为 null.
public function get restrict():String
public function set restrict(value:String):void
另请参见
restrict 属性输入十六进制颜色:
import fl.controls.ComboBox;
import fl.data.DataProvider;
import fl.events.ComponentEvent;
var dp:DataProvider = new DataProvider();
var myComboBox:ComboBox = new ComboBox();
myComboBox.dataProvider = dp;
myComboBox.editable = true;
myComboBox.restrict = "0-9A-F";
myComboBox.textField.maxChars = 6;
myComboBox.addEventListener(ComponentEvent.ENTER, enterHandler);
myComboBox.move(10, 10);
addChild(myComboBox);
function enterHandler(event:ComponentEvent):void {
var colorStr:String = ComboBox(event.currentTarget).text;
var colorNum:uint = uint("0x" + colorStr);
dp.addItem({label:colorStr, value:colorNum});
dp.sortOn("value", Array.NUMERIC);
event.currentTarget.text = "";
}
| rowCount | 属性 |
rowCount:uint [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取或设置没有滚动条的下拉列表中可显示的最大行数。 如果下拉列表中的项数超过该值,则会调整列表的大小,并在必要时显示滚动条。 如果下拉列表中的项数小于该值,则会调整下拉列表的大小以适应其所包含的项数。
此行为与 List 组件的行为不同,List 组件会始终显示由其 rowCount 属性指定的行数,即使其中出现空白也是如此。
默认值为 5.
public function get rowCount():uint
public function set rowCount(value:uint):void
另请参见
rowCount 属性:
import fl.controls.ComboBox;
import fl.controls.Slider;
import fl.events.SliderEvent;
var numItems:uint = 8;
var mySlider:Slider = new Slider();
mySlider.tickInterval = 1;
mySlider.snapInterval = 1;
mySlider.minimum = 1;
mySlider.maximum = numItems;
mySlider.liveDragging = true;
mySlider.move(10, 10);
mySlider.addEventListener(SliderEvent.CHANGE, changeHandler);
addChild(mySlider);
var myComboBox:ComboBox = new ComboBox();
myComboBox.move(10, 30);
addChild(myComboBox);
var i:uint;
for (i = 0; i < numItems; i++) {
myComboBox.addItem({label:"Item " + i});
}
function changeHandler(event:SliderEvent):void {
myComboBox.rowCount = event.value;
}
| selectedIndex | 属性 |
selectedIndex:int [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
值为 -1 指示未选择任何项目;如果选择了多项,则该值等于所选的一组项目中最后一个选定项目的索引。
使用 ActionScript 设置此属性时,位于指定索引处的项目将替换当前选定的内容。 通过编程方式更改选定内容时,不会调度 change 事件对象。
默认值为 0.
public function get selectedIndex():int
public function set selectedIndex(value:int):void
另请参见
selectedIndex 属性:
import fl.controls.ComboBox;
import fl.controls.Slider;
import fl.data.DataProvider;
import fl.events.SliderEvent;
var items:XML = <items>
<item label="Item 1" />
<item label="Item 2" />
<item label="Item 3" />
<item label="Item 4" />
</items>;
var dp:DataProvider = new DataProvider(items);
var mySlider:Slider = new Slider();
mySlider.liveDragging = true;
mySlider.tickInterval = 1;
mySlider.snapInterval = 1;
mySlider.minimum = 0;
mySlider.maximum = dp.length - 1;
mySlider.width = 100;
mySlider.move(10, 10);
mySlider.addEventListener(SliderEvent.CHANGE, changeHandler);
addChild(mySlider);
var myComboBox:ComboBox = new ComboBox();
myComboBox.dataProvider = dp;
myComboBox.move(10, 30);
addChild(myComboBox);
function changeHandler(event:SliderEvent):void {
myComboBox.selectedIndex = event.value;
}
selectedIndex 属性值显示在舞台上的标签中:
import fl.controls.ComboBox;
import fl.controls.Label;
var myComboBox:ComboBox = new ComboBox();
myComboBox.prompt = "Please select an item...";
myComboBox.addItem({label:"Item 1"});
myComboBox.addItem({label:"Item 2"});
myComboBox.addItem({label:"Item 3"});
myComboBox.addItem({label:"Item 4"});
myComboBox.width = 150;
myComboBox.move(10, 10);
myComboBox.addEventListener(Event.CHANGE, changeHandler);
addChild(myComboBox);
var myLabel:Label = new Label();
myLabel.autoSize = TextFieldAutoSize.LEFT;
myLabel.text = "selectedIndex:" + myComboBox.selectedIndex;
myLabel.move(myComboBox.x + myComboBox.width + 10, myComboBox.y);
addChild(myLabel);
function changeHandler(event:Event):void {
myLabel.text = "selectedIndex:" + myComboBox.selectedIndex;
}
| selectedItem | 属性 |
selectedItem:Object [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取或设置下拉列表中所选项目的值。 如果用户在可编辑 ComboBox 组件的文本框中输入文本,则 selectedItem 属性为 undefined。 只有当用户手动或使用 ActionScript 从下拉框中选择一个项目时,此属性才具有值。 如果 ComboBox 组件不可编辑,则 selectedItem 属性值始终有效。 如果可编辑 ComboBox 组件的下拉列表中不存在任何项目,则此属性值为 null。
默认值为 null.
public function get selectedItem():Object
public function set selectedItem(value:Object):void
另请参见
import fl.controls.Button;
import fl.controls.ComboBox;
import fl.controls.List;
var myComboBox:ComboBox = new ComboBox();
myComboBox.prompt = "Select an item";
myComboBox.addItem({label:"Item A"});
myComboBox.addItem({label:"Item B"});
myComboBox.addItem({label:"Item C"});
myComboBox.move(10, 10);
addChild(myComboBox);
var myButton:Button = new Button();
myButton.label = "Copy";
myButton.move(myComboBox.x + myComboBox.width + 10, myComboBox.y);
myButton.addEventListener(MouseEvent.CLICK, clickHandler);
addChild(myButton);
var myList:List = new List();
myList.rowCount = myList.length;
myList.selectable = false;
myList.move(myComboBox.x, myComboBox.y + myComboBox.height + 10);
addChild(myList);
function clickHandler(event:MouseEvent):void {
if (myComboBox.selectedIndex > -1) {
myList.addItem(myComboBox.selectedItem);
myList.rowCount = myList.length;
}
}
import fl.controls.ComboBox;
import fl.controls.Label;
var myComboBox:ComboBox = new ComboBox();
myComboBox.prompt = "Select a user:";
myComboBox.addItem({firstName:"Jane", lastName:"Doe"});
myComboBox.addItem({firstName:"Bill", lastName:"Smith"});
myComboBox.addItem({firstName:"Tim", lastName:"Jones"});
myComboBox.labelFunction = nameLabelFunction;
myComboBox.width = 120;
myComboBox.move(10, 10);
myComboBox.addEventListener(Event.CHANGE, changeHandler);
addChild(myComboBox);
var firstNameLabel:Label = new Label();
firstNameLabel.text = "";
firstNameLabel.autoSize = TextFieldAutoSize.LEFT;
firstNameLabel.move(myComboBox.x, myComboBox.y + myComboBox.height);
addChild(firstNameLabel);
var lastNameLabel:Label = new Label();
lastNameLabel.text = "";
lastNameLabel.autoSize = TextFieldAutoSize.LEFT;
lastNameLabel.move(firstNameLabel.x, firstNameLabel.y + firstNameLabel.height);
addChild(lastNameLabel);
function changeHandler(event:Event):void {
var cb:ComboBox = event.currentTarget as ComboBox;
var item:Object = cb.selectedItem;
if (cb.selectedIndex > -1) {
firstNameLabel.text = item.firstName;
lastNameLabel.text = item.lastName;
}
}
function nameLabelFunction(item:Object):String {
return item.lastName + ", " + item.firstName;
}
| selectedLabel | 属性 |
selectedLabel:String [read-only]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取显示在 ComboBox 组件的 TextInput 部分中的字符串。 该值可通过使用 labelField 或 labelFunction 属性由数据计算得出。
public function get selectedLabel():String
另请参见
selectedLabel 属性:
import fl.controls.ComboBox;
import fl.controls.Label;
var myComboBox:ComboBox = new ComboBox();
myComboBox.prompt = "Select a user:";
myComboBox.addItem({firstName:"Jane", lastName:"Doe"});
myComboBox.addItem({firstName:"Bill", lastName:"Smith"});
myComboBox.addItem({firstName:"Tim", lastName:"Jones"});
myComboBox.labelFunction = nameLabelFunction;
myComboBox.width = 120;
myComboBox.move(10, 10);
myComboBox.addEventListener(Event.CHANGE, changeHandler);
addChild(myComboBox);
var myLabel:Label = new Label();
myLabel.text = "";
myLabel.autoSize = TextFieldAutoSize.LEFT;
myLabel.move(myComboBox.x, myComboBox.y + myComboBox.height);
addChild(myLabel);
function changeHandler(event:Event):void {
var cb:ComboBox = event.currentTarget as ComboBox;
myLabel.text = "selectedLabel: " + cb.selectedLabel;
}
function nameLabelFunction(item:Object):String {
return item.lastName + ", " + item.firstName;
}
| text | 属性 |
text:String [read-write]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取或设置可编辑 ComboBox 组件中文本框所包含的文本。 对于不可编辑的 ComboBox 组件,该值为只读。
默认值为 "".
public function get text():String
public function set text(value:String):void
import fl.controls.ComboBox;
import fl.controls.TextArea;
import fl.events.ComponentEvent;
var myComboBox:ComboBox = new ComboBox();
myComboBox.editable = true;
myComboBox.addEventListener(TextEvent.TEXT_INPUT, textInputHandler);
myComboBox.addEventListener(ComponentEvent.ENTER, enterHandler);
myComboBox.width = 300;
myComboBox.move(10, 10);
addChild(myComboBox);
var myTextArea:TextArea = new TextArea();
myTextArea.wordWrap = false;
myTextArea.setSize(300, 200);
myTextArea.move(myComboBox.x, myComboBox.y + myComboBox.height + 10);
addChild(myTextArea)
function textInputHandler(event:TextEvent):void {
myTextArea.appendText(event.type + ":\n");
myTextArea.appendText("\t" + event.currentTarget.text + "\n");
myTextArea.appendText("\t" + event.text + "\n");
myTextArea.appendText("\n");
autoScroll(myTextArea);
}
function enterHandler(event:ComponentEvent):void {
myTextArea.appendText(event.type + ":\n");
myTextArea.appendText("\t" + event.currentTarget.text + "\n");
myTextArea.appendText("\n");
autoScroll(myTextArea);
}
function autoScroll(ta:TextArea):void {
ta.verticalScrollPosition = ta.maxVerticalScrollPosition;
}
| textField | 属性 |
textField:TextInput [read-only]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取对 ComboBox 组件所包含的 TextInput 组件的引用。 使用此属性访问并操作基础 TextInput 组件。 例如,可以使用此属性更改文本框的选定内容或者限制可以在文本框中输入的字符。
public function get textField():TextInput
import fl.controls.ComboBox; var myComboBox:ComboBox = new ComboBox(); myComboBox.editable = true; myComboBox.textField.maxChars = 8; myComboBox.move(10, 10); addChild(myComboBox);
import fl.controls.ComboBox;
var comicSansTF:TextFormat = new TextFormat();
comicSansTF.font = "Comic Sans MS";
var myComboBox:ComboBox = new ComboBox();
myComboBox.textField.setStyle("textFormat", comicSansTF);
myComboBox.addItem({label:"Item A"});
myComboBox.addItem({label:"Item B"});
myComboBox.addItem({label:"Item C"});
myComboBox.addItem({label:"Item D"});
myComboBox.move(10, 10);
addChild(myComboBox);
import fl.controls.ComboBox;
import fl.data.DataProvider;
var myTextFormat:TextFormat = new TextFormat();
myTextFormat.font = "Comic Sans MS";
myTextFormat.color = 0xFF0000;
var fontArray:Array = Font.enumerateFonts(true);
fontArray.sortOn("fontName", Array.CASEINSENSITIVE);
var dp:DataProvider = new DataProvider(fontArray);
var myComboBox:ComboBox = new ComboBox();
myComboBox.dataProvider = dp;
myComboBox.dropdown.iconField = null;
myComboBox.labelField = "fontName";
myComboBox.textField.setStyle("textFormat", myTextFormat);
myComboBox.dropdown.setRendererStyle("textFormat", myTextFormat);
myComboBox.width = 200;
myComboBox.move(10, 10);
addChild(myComboBox);
| value | 属性 |
value:String [read-only]
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
获取可编辑 ComboBox 组件中的项目的标签。 对于不可编辑的 ComboBox 组件,此属性获取项目所包含的数据。
public function get value():String
value 属性:
import fl.controls.ComboBox;
import fl.controls.Label;
var myComboBox:ComboBox = new ComboBox();
myComboBox.prompt = "Select a user:";
myComboBox.addItem({firstName:"Jane", lastName:"Doe"});
myComboBox.addItem({firstName:"Bill", lastName:"Smith"});
myComboBox.addItem({firstName:"Tim", lastName:"Jones"});
myComboBox.labelFunction = nameLabelFunction;
myComboBox.width = 120;
myComboBox.move(10, 10);
myComboBox.addEventListener(Event.CHANGE, changeHandler);
myComboBox.editable = true;
addChild(myComboBox);
var myLabel:Label = new Label();
myLabel.text = "";
myLabel.autoSize = TextFieldAutoSize.LEFT;
myLabel.move(myComboBox.x, myComboBox.y + myComboBox.height);
addChild(myLabel);
function changeHandler(event:Event):void {
var cb:ComboBox = event.currentTarget as ComboBox;
myLabel.text = "value: " + cb.value;
}
function nameLabelFunction(item:Object):String {
var str:String;
if (item == null) {
str = myComboBox.value;
} else {
str = item.lastName + ", " + item.firstName;
}
return str;
}
| ComboBox | () | 构造函数 |
public function ComboBox()
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
创建新的 ComboBox 组件实例。
| addItem | () | 方法 |
public function addItem(item:Object):void
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
项目应包含 label 和 data 属性;但包含其它属性的项目也可以添加到列表。 默认情况下,项目的 label 属性用于显示行的标签;data 属性用于存储行的数据。
参数
item:Object — 要添加到数据提供者的项目。
|
另请参见
| addItemAt | () | 方法 |
public function addItemAt(item:Object, index:uint):void
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
参数
item:Object — 要添加到列表的项目。
|
|
index:uint — 要添加项目处的索引。
|
另请参见
| close | () | 方法 |
public function close():void
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
关闭下拉列表。
注意:调用此方法将导致 close 事件被调度。 如果 ComboBox 已关闭,则调用此方法无效。
另请参见
open() 和 close() 方法切换下拉菜单的可见性:
import fl.controls.ComboBox;
var myComboBox:ComboBox = new ComboBox();
myComboBox.addItem({label:"Item 1"});
myComboBox.addItem({label:"Item 2"});
myComboBox.addItem({label:"Item 3"});
myComboBox.move(10, 10);
myComboBox.addEventListener(Event.OPEN, openHandler);
myComboBox.addEventListener(Event.CLOSE, closeHandler);
addChild(myComboBox);
var isOpen:Boolean = false;
var timer:Timer = new Timer(1000);
timer.addEventListener(TimerEvent.TIMER, timerHandler);
timer.start();
function openHandler(event:Event):void {
isOpen = true;
}
function closeHandler(event:Event):void {
isOpen = false;
}
function timerHandler(event:TimerEvent):void {
if (isOpen) {
myComboBox.close();
} else {
myComboBox.open();
}
}
| getItemAt | () | 方法 |
public function getItemAt(index:uint):Object
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
参数
index:uint — 要检索的项目的索引。
|
Object — 位于指定索引位置处的对象。
|
getItemAt() 方法将 ComboBox 中的项目复制到 DataGrid 组件中:
import fl.controls.ComboBox;
import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
var myComboBox:ComboBox = new ComboBox();
myComboBox.addItem({label:"Item 1", price:0.34});
myComboBox.addItem({label:"Item 2", price:13.19});
myComboBox.addItem({label:"item 3", price:2.96});
myComboBox.addItem({label:"Item 4", price:3.49});
myComboBox.addItem({label:"Item 5", price:1.27});
myComboBox.move(10, 10);
addChild(myComboBox);
var indexCol:DataGridColumn = new DataGridColumn("index");
indexCol.headerText = "";
indexCol.sortOptions = Array.NUMERIC;
var labelCol:DataGridColumn = new DataGridColumn("label");
labelCol.sortOptions = Array.CASEINSENSITIVE;
var priceCol:DataGridColumn = new DataGridColumn("price");
priceCol.sortOptions = Array.NUMERIC;
var myDataGrid:DataGrid = new DataGrid();
myDataGrid.addColumn(indexCol);
myDataGrid.addColumn(labelCol);
myDataGrid.addColumn(priceCol);
myDataGrid.move(10, 40);
myDataGrid.rowCount = myComboBox.length;
myDataGrid.width = 180;
addChild(myDataGrid);
var i:uint;
var item:Object;
for (i = 0; i < myComboBox.length; i++) {
item = myComboBox.getItemAt(i);
myDataGrid.addItem({index:i, label:item.label, price:item.price});
}
| getStyleDefinition | () | 方法 |
public static function getStyleDefinition():Object
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
disabledTextFormat 样式包含 null 值或 TextFormat 对象。 可以使用这些样式并对当前组件调用 setStyle()。 下面的代码覆盖指定组件上默认的 disabledTextFormat 样式:
componentInstance.setStyle("disabledTextFormat", new TextFormat());返回
Object — 默认样式对象。
|
另请参见
import fl.controls.*;
import fl.containers.*;
import fl.controls.listClasses.*;
import fl.controls.dataGridClasses.*;
import fl.controls.progressBarClasses.*;
import fl.core.UIComponent;
import fl.data.DataProvider;
var dp:DataProvider = new DataProvider();
dp.addItem( { label: "BaseScrollPane", data:BaseScrollPane } );
dp.addItem( { label: "Button", data:Button } );
dp.addItem( { label: "CellRenderer", data:CellRenderer } );
dp.addItem( { label: "CheckBox", data:CheckBox } );
dp.addItem( { label: "ColorPicker", data:ColorPicker } );
dp.addItem( { label: "ComboBox", data:ComboBox } );
dp.addItem( { label: "DataGrid", data:DataGrid } );
dp.addItem( { label: "HeaderRenderer", data:HeaderRenderer } );
dp.addItem( { label: "ImageCell", data:ImageCell } );
dp.addItem( { label: "IndeterminateBar",data:IndeterminateBar } );
dp.addItem( { label: "Label", data:Label } );
dp.addItem( { label: "List", data:List } );
dp.addItem( { label: "NumericStepper", data:NumericStepper } );
dp.addItem( { label: "ProgressBar", data:ProgressBar } );
dp.addItem( { label: "RadioButton", data:RadioButton } );
dp.addItem( { label: "ScrollPane", data:ScrollPane } );
dp.addItem( { label: "Slider", data:Slider } );
dp.addItem( { label: "TextArea", data:TextArea } );
dp.addItem( { label: "TextInput", data:TextInput } );
dp.addItem( { label: "TileList", data:TileList } );
dp.addItem( { label: "UILoader", data:UILoader } );
dp.addItem( { label: "UIComponent", data:UIComponent } );
var cb:ComboBox = new ComboBox();
cb.move(10,10);
cb.setSize(300,25);
cb.prompt = "Select a component to view its styles";
cb.rowCount = 12;
cb.dataProvider = dp;
cb.addEventListener(Event.CHANGE, showStyleDefinition);
addChild(cb);
var dg:DataGrid = new DataGrid();
dg.setSize(425,300);
dg.move(10,50);
dg.columns = [ new DataGridColumn("StyleName"), new DataGridColumn("DefaultValue") ];
addChild(dg);
function showStyleDefinition(e:Event):void {
var componentClass:Class = e.target.selectedItem.data as Class;
var styles:Object = componentClass["getStyleDefinition"].call(this);
trace(styles.toString());
var styleData:DataProvider = new DataProvider();
for(var i:* in styles) {
trace(i + " : " + styles[i]);
styleData.addItem( { StyleName:i, DefaultValue:styles[i] } );
}
styleData.sortOn("StyleName");
dg.dataProvider = styleData;
}| itemToLabel | () | 方法 |
public function itemToLabel(item:Object):String
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
labelField 和 labelFunction 属性检索渲染器将为给定数据对象显示的字符串。
注意:labelField 不在 labelFunction 属性设置为回调函数时使用。
参数
item:Object — 要呈现的对象。
|
String — 根据数据要显示的字符串。
|
另请参见
| open | () | 方法 |
public function open():void
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
打开下拉列表。
注意:调用此方法将导致 open 事件被调度。 如果 ComboBox 组件已打开,则调用此方法无效。
另请参见
| removeAll | () | 方法 |
public function removeAll():void
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
另请参见
removeAll() 方法使用 Button 组件实例从 ComboBox 中删除项目:
import fl.controls.Button;
import fl.controls.ComboBox;
import fl.controls.TextInput;
var greenTF:TextFormat;
var redTF:TextFormat;
var myTextInput:TextInput;
var addButton:Button;
var myComboBox:ComboBox;
var removeButton:Button;
greenTF = new TextFormat();
greenTF.color = 0x006600;
redTF = new TextFormat();
redTF.color = 0xFF0000;
myTextInput = new TextInput();
myTextInput.maxChars = 20;
myTextInput.restrict = "a-zA-Z";
myTextInput.move(10, 10);
addChild(myTextInput);
addButton = new Button();
addButton.label = "(+) Add";
addButton.setStyle("textFormat", greenTF);
addButton.move(120, 10);
addButton.addEventListener(MouseEvent.CLICK, addClickHandler);
addChild(addButton);
myComboBox = new ComboBox();
myComboBox.move(10, 40);
addChild(myComboBox);
removeButton = new Button();
removeButton.label = "(-) Remove All";
removeButton.setStyle("textFormat", redTF);
removeButton.move(120, 40);
removeButton.addEventListener(MouseEvent.CLICK, removeClickHandler);
addChild(removeButton);
function addClickHandler(event:MouseEvent):void {
if (myTextInput.length > 0) {
trace("adding item...");
myComboBox.addItem({label:myTextInput.text});
myComboBox.sortItemsOn("label", Array.CASEINSENSITIVE);
myTextInput.text = "";
}
}
function removeClickHandler(event:MouseEvent):void {
trace("removing all items...");
myComboBox.removeAll();
}
| removeItem | () | 方法 |
public function removeItem(item:Object):Object
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
参数
item:Object — 要删除的项目。
|
Object — 被删除的项目。
|
另请参见
import fl.controls.List;
import fl.events.ListEvent;
var myList:List = new List();
myList.addItem( { label: "Carrot" } );
myList.addItem( { label: "Turnip" } );
myList.addItem( { label: "Tomato" } );
myList.addItem( { label: "Blueberry" } );
myList.addEventListener(ListEvent.ITEM_CLICK,removeSelectedItem);
addChild(myList);
function removeSelectedItem(e:ListEvent):void {
myList.removeItem(e.item);
}| removeItemAt | () | 方法 |
public function removeItemAt(index:uint):void
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
删除指定索引位置处的项目。 索引大于指定索引的项目的索引位置在数组中提前 1。
这是 List 组件的一个方法,可以从 ComboBox 组件的实例中获得。
参数
index:uint — 要删除的项目的索引。
|
RangeError — 指定的索引小于 0 或大于等于数据提供者的长度。
|
另请参见
| replaceItemAt | () | 方法 |
public function replaceItemAt(item:Object, index:uint):Object
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
参数
item:Object — 要替换指定索引位置处的项目的项目。
|
|
index:uint — 要替换的项目的索引位置。
|
Object — 被替换的项目。
|
replaceItemAt() 方法将 ComboBox 中当前所选的项目替换为 TextInput 组件中的值:
import fl.controls.Button;
import fl.controls.ComboBox;
import fl.controls.TextArea;
import fl.controls.TextInput;
var myComboBox:ComboBox = new ComboBox();
myComboBox.prompt = "Select a user...";
myComboBox.addItem({label:"Person 1"});
myComboBox.addItem({label:"Person 2"});
myComboBox.addItem({label:"Person 3"});
myComboBox.addItem({label:"Person 4"});
myComboBox.width = 150;
myComboBox.move(10, 10);
myComboBox.addEventListener(Event.CHANGE, changeHandler);
addChild(myComboBox);
var myTextInput:TextInput = new TextInput();
myTextInput.restrict = "a-zA-Z0-9";
myTextInput.maxChars = 12;
myTextInput.move(10, 40);
addChild(myTextInput)
var myButton:Button = new Button();
myButton.label = "Replace item";
myButton.addEventListener(MouseEvent.CLICK, clickHandler);
myButton.move(120, 40);
addChild(myButton);
var myTextArea:TextArea = new TextArea();
myTextArea.editable = false;
myTextArea.setSize(320, 240);
myTextArea.move(10, 70);
addChild(myTextArea);
function changeHandler(event:Event):void {
myTextInput.text = myComboBox.selectedLabel;
}
function clickHandler(event:MouseEvent):void {
var cIndex:int = myComboBox.selectedIndex;
if (cIndex > -1) {
var newItem:Object = {label:myTextInput.text};
var oldItem:Object = myComboBox.replaceItemAt(newItem, cIndex);
myComboBox.selectedIndex = cIndex;
myTextArea.appendText("[index:" + cIndex + "] old:'" + oldItem.label +"', new:'" + newItem.label + "'\n");
myTextArea.verticalScrollPosition = myTextArea.maxVerticalScrollPosition;
}
}
| sortItems | () | 方法 |
public function sortItems(... sortArgs):*
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
参数
... sortArgs — 排序要依照的参数。
|
* — 返回值取决于是否向此方法传递任何参数。 有关详细信息,请参阅 Array.sort() 方法。 请注意,当 sortArgs 参数设置为 Array.UNIQUESORT 时此方法返回 0。
|
另请参见
upperCaseSort(),该函数会对两个项目的 label 属性进行比较,并根据应显示项目的顺序返回一个布尔值:
import fl.controls.ComboBox;
var cb:ComboBox = new ComboBox();
cb.addItem( { label: "Mercury" } );
cb.addItem( { label: "Venus" } );
cb.addItem( { label: "Earth" } );
cb.addItem( { label: "planet" } );
cb.sortItems(upperCaseSort);
addChild(cb);
function upperCaseSort(a:Object, b:Object):Boolean {
return a.label.toUpperCase() > b.label.toUpperCase();
}| sortItemsOn | () | 方法 |
public function sortItemsOn(field:String, options:Object = null):*
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
参数
field:String — 要依据其进行排序的字段。
|
|
options:Object (default = null) — 用于覆盖默认排序行为的排序参数。 使用按位 OR (|) 运算符分隔两个或更多参数。
|
* — 返回值取决于是否向此方法传递任何参数。 有关详细信息,请参阅 Array.sortOn() 方法。 请注意,当 sortOption 参数设置为 Array.UNIQUESORT 时此方法返回 0。
|
另请参见
cb 的 ComboBox 实例,该实例包含四个元素,它们分别带有 "Apples"、"Bananas"、"cherries" 和 "Grapes" 标签:
import fl.controls.ComboBox;
var cb:ComboBox = new ComboBox();
addChild(cb);
// First, populate the ComboBox with the elements.
cb.addItem( { label: "Bananas" } );
cb.addItem( { label: "Apples" } );
cb.addItem( { label: "cherries" } );
cb.addItem( { label: "Grapes" } );
// The following statement sorts using the order parameter set to "ASC",
// and results in a sort that places "cherries" at the bottom of the list
// because the sort is case-sensitive.
cb.sortItemsOn("label", "ASC");
// resulting order: Apples, Bananas, Grapes, cherries
// The following statement sorts using the order parameter set to "DESC",
// and results in a sort that places "cherries" at the top of the list
// because the sort is case-sensitive.
cb.sortItemsOn("label", "DESC");
// resulting order: cherries, Grapes, Bananas, Apples
// The following statement sorts using the optionsFlag parameter set to
// Array.CASEINSENSITIVE. Note that an ascending sort is the default setting.
cb.sortItemsOn("label", Array.CASEINSENSITIVE);
// resulting order: Apples, Bananas, cherries, Grapes
// The following statement sorts using the optionsFlag parameter set to
// Array.CASEINSENSITIVE | Array.DESCENDING.
cb.sortItemsOn("label", Array.CASEINSENSITIVE | Array.DESCENDING);
// resulting order: Grapes, cherries, Bananas, ApplessortItemsOn() 方法对项目进行排序:
import fl.controls.ComboBox;
var myComboBox:ComboBox = new ComboBox();
myComboBox.addItem({firstName:"Jane", lastName:"Doe"});
myComboBox.addItem({firstName:"Bill", lastName:"Smith"});
myComboBox.addItem({firstName:"Tim", lastName:"Jones"});
myComboBox.sortItemsOn("lastName", Array.CASEINSENSITIVE);
myComboBox.labelFunction = nameLabelFunction;
myComboBox.move(10, 10);
addChild(myComboBox);
function nameLabelFunction(item:Object):String {
return item.lastName + ", " + item.firstName;
}
| change | 事件 |
flash.events.Event
flash.events.Event.CHANGE
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
当用户更改 ComboBox 组件中的选定内容时调度,或者如果 ComboBox 组件可编辑,每当用户在文本字段中键击时调度。
定义change 事件对象的 type 属性值。
此事件具有以下属性:
| 属性 | 值 |
|---|---|
bubbles | true |
cancelable | false;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 已修改其值的对象。 target 不一定是显示列表中注册此事件侦听器的对象。 请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。 |
| close | 事件 |
flash.events.Event
flash.events.Event.CLOSE
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
当因任何原因而取消下拉列表时调度。
定义close 事件对象的 type 属性值。
此事件具有以下属性:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 已关闭其连接的对象。 |
open() 和 close() 方法切换下拉菜单的可见性:
import fl.controls.ComboBox;
var myComboBox:ComboBox = new ComboBox();
myComboBox.addItem({label:"Item 1"});
myComboBox.addItem({label:"Item 2"});
myComboBox.addItem({label:"Item 3"});
myComboBox.move(10, 10);
myComboBox.addEventListener(Event.OPEN, openHandler);
myComboBox.addEventListener(Event.CLOSE, closeHandler);
addChild(myComboBox);
var isOpen:Boolean = false;
var timer:Timer = new Timer(1000);
timer.addEventListener(TimerEvent.TIMER, timerHandler);
timer.start();
function openHandler(event:Event):void {
isOpen = true;
}
function closeHandler(event:Event):void {
isOpen = false;
}
function timerHandler(event:TimerEvent):void {
if (isOpen) {
myComboBox.close();
} else {
myComboBox.open();
}
}
另请参见
| enter | 事件 |
fl.events.ComponentEvent
fl.events.ComponentEvent.ENTER
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
在以下情况下调度:editable 属性设置为 true,并且用户在可编辑文本字段中编辑时按下 Enter。
enter 事件对象的 type 属性值。
此事件具有以下属性:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理事件对象的对象。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
| itemRollOut | 事件 |
fl.events.ListEvent
fl.events.ListEvent.ITEM_ROLL_OUT
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
itemRollOut 事件对象的 type 属性值。
此事件具有以下属性:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false;没有要取消的默认行为。 |
columnIndex | 包含渲染器的列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理事件对象的对象。 |
index | 包含渲染器的 DataProvider 中从零开始的索引。 |
item | 对属于渲染器的数据的引用。 |
rowIndex | 包含渲染器的行的从零开始的索引。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
另请参见
| itemRollOver | 事件 |
fl.events.ListEvent
fl.events.ListEvent.ITEM_ROLL_OVER
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
itemRollOver 事件对象的 type 属性值。
此事件具有以下属性:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false;没有要取消的默认行为。 |
columnIndex | 包含渲染器的列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理事件对象的对象。 |
index | 包含渲染器的 DataProvider 中从零开始的索引。 |
item | 对属于渲染器的数据的引用。 |
rowIndex | 包含渲染器的行的从零开始的索引。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
import fl.controls.ComboBox;
import fl.controls.TextArea;
import fl.events.ListEvent;
var myComboBox:ComboBox = new ComboBox();
myComboBox.addItem({label:"Item 1"});
myComboBox.addItem({label:"Item 2"});
myComboBox.addItem({label:"Item 3"});
myComboBox.move(10, 10);
myComboBox.addEventListener(Event.OPEN, openHandler);
myComboBox.addEventListener(Event.CLOSE, closeHandler);
myComboBox.addEventListener(ListEvent.ITEM_ROLL_OVER, itemRollOverHandler);
myComboBox.addEventListener(ListEvent.ITEM_ROLL_OUT, itemRollOutHandler);
myComboBox.addEventListener(MouseEvent.ROLL_OVER, rollOverHandler);
myComboBox.addEventListener(MouseEvent.ROLL_OUT, rollOutHandler);
myComboBox.dropdown.addEventListener(MouseEvent.ROLL_OVER, dropdownRollOverHandler)
myComboBox.dropdown.addEventListener(MouseEvent.ROLL_OUT, dropdownRollOutHandler);
addChild(myComboBox);
var myTextArea:TextArea = new TextArea();
myTextArea.editable = false;
myTextArea.setSize(320, 240);
myTextArea.move(120, 10);
addChild(myTextArea);
function openHandler(event:Event):void {
logEvent("ComboBox open");
}
function closeHandler(event:Event):void {
logEvent("ComboBox close");
}
function itemRollOverHandler(event:ListEvent):void {
var rowIdx:uint = event.rowIndex as uint;
logEvent("ComboBox itemRollOver: " + "`" + myComboBox.getItemAt(rowIdx).label + "`");
}
function itemRollOutHandler(event:ListEvent):void {
var rowIdx:uint = event.rowIndex as uint;
logEvent("ComboBox itemRollOut: " + "`" + myComboBox.getItemAt(rowIdx).label + "`");
}
function rollOverHandler(event:MouseEvent):void {
logEvent("ComboBox rollOver");
myComboBox.open();
}
function rollOutHandler(event:MouseEvent):void {
logEvent("ComboBox rollOut");
myComboBox.close();
}
function dropdownRollOverHandler(event:MouseEvent):void {
logEvent("ComboBox.dropdown rollOver");
// reopen ComboBox after it gets closed by the ComboBox rollOut event
myComboBox.open();
}
function dropdownRollOutHandler(event:MouseEvent):void {
logEvent("ComboBox.dropdown rollOut");
myComboBox.close();
}
function logEvent(text:String):void {
myTextArea.appendText(text + "\n");
myTextArea.verticalScrollPosition = myTextArea.maxVerticalScrollPosition;
}
另请参见
| open | 事件 |
flash.events.Event
flash.events.Event.OPEN
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
当用户单击下拉按钮以显示下拉列表时调度。 如果 ComboBox 组件不可编辑,当用户单击文本字段时也会调度。
定义open 事件对象的 type 属性值。
此事件具有以下属性:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 已打开连接的网络对象。 |
open() 方法打开 ComboBox 组件的下拉列表。 该下拉菜单将在 1 秒后关闭,除非用户将鼠标滑过 ComboBox 或其下拉菜单:
import fl.controls.Button;
import fl.controls.ComboBox;
var myComboBox:ComboBox = new ComboBox();
myComboBox.addItem({label:"Item 1"});
myComboBox.addItem({label:"Item 2"});
myComboBox.addItem({label:"Item 3"});
myComboBox.move(10, 10);
myComboBox.addEventListener(MouseEvent.ROLL_OVER, rollOverHandler);
myComboBox.dropdown.addEventListener(MouseEvent.ROLL_OVER, rollOverHandler);
myComboBox.dropdown.addEventListener(MouseEvent.ROLL_OUT, rollOutHandler);
addChild(myComboBox);
var myButton:Button = new Button();
myButton.emphasized = true;
myButton.label = "open ComboBox";
myButton.move(120, 10);
myButton.addEventListener(MouseEvent.CLICK, clickHandler);
addChild(myButton);
var closeTimer:Timer = new Timer(1000, 1);
closeTimer.addEventListener(TimerEvent.TIMER_COMPLETE, timerCompleteHandler);
function clickHandler(event:MouseEvent):void {
myComboBox.open();
closeTimer.reset();
closeTimer.start();
}
function timerCompleteHandler(event:TimerEvent):void {
myComboBox.close();
}
function rollOverHandler(event:MouseEvent):void {
closeTimer.stop();
}
function rollOutHandler(event:MouseEvent):void {
myComboBox.close();
}
另请参见
| scroll | 事件 |
fl.events.ScrollEvent
fl.events.ScrollEvent.SCROLL
| 语言版本 : | ActionScript 3.0 |
| Player 版本 : | Flash Player 9.0.28.0 |
当用户滚动 ComboBox 组件的下拉列表时调度。
定义scroll 事件对象的 type 属性值。
此事件具有以下属性:
| 属性 | 值 |
|---|---|
bubbles | false |
cancelable | false;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理事件对象的对象。 |
delta | 1;一个指示完成了多少滚动量的值。
|
direction | vertical;ScrollBar 的方向。 |
position | 0;Scrollbar 滑块移动后的位置。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
若要运行该示例,请按照下列步骤操作:
cb。
package
{
import fl.controls.ComboBox;
import flash.display.Sprite
import flash.events.Event;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
public class ComboBoxExample extends Sprite
{
private var tf:TextField;
public function ComboBoxExample() {
setupComboBox();
setupTextField();
}
private function setupTextField():void {
tf = new TextField();
tf.x = 230;
tf.y = 15;
tf.autoSize = TextFieldAutoSize.LEFT;
addChild(tf);
}
private function setupComboBox():void {
cb.setSize(200, 22);
cb.prompt = "Select a Credit Card";
cb.addItem( { label: "MasterCard", data:1 } );
cb.addItem( { label: "Visa", data:2 } );
cb.addItem( { label: "American Express", data:3 } );
cb.addEventListener(Event.CHANGE, cardSelected);
}
private function cardSelected(e:Event):void {
tf.text = "You have selected: "
tf.appendText(cb.selectedItem.label);
}
}
}
当前页: http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/fl/controls/ComboBox.html