包 | fl.controls |
类 | public class ComboBox |
继承 | ComboBox UIComponent Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
实现 | IFocusManagerComponent |
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
accessibilityImplementation : AccessibilityImplementation
InteractiveObject 实例的当前辅助功能实现 (AccessibilityImplementation)。 | InteractiveObject | ||
accessibilityProperties : AccessibilityProperties
此显示对象的当前辅助功能选项。 | DisplayObject | ||
alpha : Number
表示指定对象的 Alpha 透明度值。 | DisplayObject | ||
blendMode : String
BlendMode 类中的一个值,用于指定要使用的混合模式。 | DisplayObject | ||
blendShader : Shader [只写]
设置用于混合前景和背景的着色器。 | DisplayObject | ||
buttonMode : Boolean
指定此 sprite 的按钮模式。 | Sprite | ||
cacheAsBitmap : Boolean
如果设置为 true,则 Flash 运行时将缓存显示对象的内部位图表示形式。 | DisplayObject | ||
cacheAsBitmapMatrix : Matrix
如果为非 null,则 Matrix 对象会定义显示对象在 cacheAsBitmap 设置为 true 时的呈现方式。 | DisplayObject | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
contextMenu : NativeMenu
指定与此对象相关联的上下文菜单。 | InteractiveObject | ||
dataProvider : DataProvider
获取或设置要查看的项目列表的数据模型。 | ComboBox | ||
doubleClickEnabled : Boolean
指定此对象是否接收 doubleClick 事件。 | InteractiveObject | ||
dropdown : List [只读]
获取对 ComboBox 组件所包含的 List 组件的引用。 | ComboBox | ||
dropdownWidth : Number
获取或设置下拉列表的最大宽度,以像素为单位。 | ComboBox | ||
dropTarget : DisplayObject [只读]
指定拖动 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 [只读]
指定属于此 sprite 的 Graphics 对象,在此 sprite 中可执行矢量绘图命令。 | Sprite | ||
height : Number [覆盖]
获取或设置组件的高度,以像素为单位。 | UIComponent | ||
hitArea : Sprite
指定一个 sprite 用作另一个 sprite 的点击区域。 | Sprite | ||
labelField : String
获取或设置 dataProvider 对象中的字段名称,该字段名称将显示为 TextInput 字段和下拉列表的标签。 | ComboBox | ||
labelFunction : Function
获取或设置用于获得项的标签的函数。 | ComboBox | ||
length : int [只读]
获取列表中的项目数。 | ComboBox | ||
loaderInfo : LoaderInfo [只读]
返回一个 LoaderInfo 对象,其中包含加载此显示对象所属的文件的相关信息。 | DisplayObject | ||
mask : DisplayObject
调用显示对象被指定的 mask 对象遮罩。 | DisplayObject | ||
metaData : Object
如果元数据是通过 PlaceObject4 标记与此 DisplayObject 的实例一起存储在 SWF 文件中的,则获取 DisplayObject 实例的元数据对象。 | DisplayObject | ||
mouseChildren : Boolean
确定对象的子级是否支持鼠标或用户输入设备。 | DisplayObjectContainer | ||
mouseEnabled : Boolean
指定此对象是否接收鼠标或其他用户输入、消息。 | InteractiveObject | ||
mouseFocusEnabled : Boolean
获取或设置一个值,该值指示组件是否可以在用户单击它后获得焦点。 | UIComponent | ||
mouseX : Number [只读]
表示此鼠标或用户输入设备位置的 x 坐标,以像素为单位。 | DisplayObject | ||
mouseY : Number [只读]
表示此鼠标或用户输入设备位置的 y 坐标,以像素为单位。 | DisplayObject | ||
name : String
表示 DisplayObject 的实例名称。 | DisplayObject | ||
needsSoftKeyboard : Boolean
指定当该 InteractiveObject 实例获得焦点时,是否显示虚拟键盘(显示在屏幕上的软键盘)。 | InteractiveObject | ||
numChildren : int [只读]
返回此对象的子项数目。 | DisplayObjectContainer | ||
opaqueBackground : Object
指定显示对象是否由于具有某种背景颜色而不透明。 | DisplayObject | ||
parent : DisplayObjectContainer [只读]
表示包含此显示对象的 DisplayObjectContainer 对象。 | DisplayObject | ||
prompt : String
获取或设置对 ComboBox 组件的提示。 | ComboBox | ||
restrict : String
获取或设置用户可以在文本字段中输入的字符。 | ComboBox | ||
root : DisplayObject [只读]
对于加载的 SWF 文件中的显示对象,root 属性是此 SWF 文件所表示的显示列表树结构部分中的顶级显示对象。 | DisplayObject | ||
rotation : Number
表示 DisplayObject 实例距其原始方向的旋转程度,以度为单位。 | DisplayObject | ||
rotationX : Number
表示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 x 轴旋转(以度为单位)。 | DisplayObject | ||
rotationY : Number
表示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 y 轴旋转(以度为单位)。 | DisplayObject | ||
rotationZ : Number
表示 DisplayObject 实例相对于 3D 父容器距离其原始方向的 z 轴旋转(以度为单位)。 | DisplayObject | ||
rowCount : uint
获取或设置没有滚动条的下拉列表中可显示的最大行数。 | ComboBox | ||
scale9Grid : Rectangle
当前有效的缩放网格。 | DisplayObject | ||
scaleX : Number [覆盖]
将组件的当前宽度与缩放系数相乘。 | UIComponent | ||
scaleY : Number [覆盖]
将组件的当前高度与缩放系数相乘。 | UIComponent | ||
scaleZ : Number
表示从对象的注册点开始应用的对象的深度缩放比例(百分比)。 | DisplayObject | ||
scrollRect : Rectangle
显示对象的滚动矩形范围。 | DisplayObject | ||
selectedIndex : int
获取或设置单选列表中的选定项目的索引。 | ComboBox | ||
selectedItem : Object
获取或设置下拉列表中所选项目的值。 | ComboBox | ||
selectedLabel : String [只读]
获取显示在 ComboBox 组件的 TextInput 部分中的字符串。 | ComboBox | ||
softKeyboard : String
控制软键盘的外观。 | InteractiveObject | ||
softKeyboardInputAreaOfInterest : Rectangle
定义当显示软键盘时应在屏幕上保留的区域(在 iOS 上不支持)。 | InteractiveObject | ||
soundTransform : flash.media:SoundTransform
控制此 sprite 中的声音。 | Sprite | ||
stage : Stage [只读]
显示对象的舞台。 | DisplayObject | ||
tabChildren : Boolean
确定对象的子项是否支持 Tab 键。 | DisplayObjectContainer | ||
tabEnabled : Boolean
指定此对象是否遵循 Tab 键顺序。 | InteractiveObject | ||
tabIndex : int
指定 SWF 文件中的对象按 Tab 键顺序排列。 | InteractiveObject | ||
text : String
获取或设置可编辑 ComboBox 组件中文本框所包含的文本。 | ComboBox | ||
textField : fl.controls:TextInput [只读]
获取对 ComboBox 组件所包含的 TextInput 组件的引用。 | ComboBox | ||
textSnapshot : flash.text:TextSnapshot [只读]
返回此 DisplayObjectContainer 实例的 TextSnapshot 对象。 | DisplayObjectContainer | ||
transform : flash.geom:Transform
一个对象,具有与显示对象的矩阵、颜色转换和像素范围有关的属性。 | DisplayObject | ||
useHandCursor : Boolean
布尔值,表示当指针滑过 buttonMode 属性设置为 true 的 sprite 时是否显示指针手形(手形光标)。 | Sprite | ||
value : String [只读]
获取可编辑 ComboBox 组件中的项目的标签。 | ComboBox | ||
visible : Boolean [覆盖]
获取或设置一个值,该值指示当前组件实例是否可见。 | UIComponent | ||
width : Number [覆盖]
获取或设置组件的宽度(以像素为单位)。 | UIComponent | ||
x : Number [覆盖]
获取或设置 x 坐标,该坐标表示组件在其父容器内沿 x 轴的位置。 | UIComponent | ||
y : Number [覆盖]
获取或设置 y 坐标,该坐标表示组件在其父容器内沿 y 轴的位置。 | UIComponent | ||
z : Number
表示 DisplayObject 实例相对于 3D 父容器沿 z 轴的 z 坐标位置。 | DisplayObject |
方法 | 由以下参数定义 | ||
---|---|---|---|
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 | ||
[静态]
检索当前组件的默认样式映射。 | ComboBox | ||
将 point 对象从舞台(全局)坐标转换为显示对象的(本地)坐标。 | DisplayObject | ||
将二维点从舞台(全局)坐标转换为三维显示对象的(本地)坐标。 | DisplayObject | ||
检查 EventDispatcher 对象是否为特定事件类型注册了任何侦听器。 | EventDispatcher | ||
表示对象是否已经定义了指定的属性。 | Object | ||
计算显示对象的边框,以确定它是否与 obj 显示对象的边框重叠或相交。 | DisplayObject | ||
计算显示对象,以确定它是否与 x 和 y 参数指定的点重叠或相交。 | DisplayObject | ||
在未另外指定的情况下,将属性标记为无效,并在下一帧上重绘组件。 | UIComponent | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
基于 labelField 和 labelFunction 属性检索渲染器将为给定数据对象显示的字符串。 | ComboBox | ||
将三维显示对象的(本地)坐标的三维点转换为舞台(全局)坐标中的二维点。 | DisplayObject | ||
将 point 对象从显示对象的(本地)坐标转换为舞台(全局)坐标。 | DisplayObject | ||
[静态]
将多个类的样式合并到一个对象中。 | UIComponent | ||
将组件移动到其父项内的指定位置。 | UIComponent | ||
打开下拉列表。 | ComboBox | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
删除列表中的所有项目。 | ComboBox | ||
从 DisplayObjectContainer 实例的子列表中删除指定的 child DisplayObject 实例。 | DisplayObjectContainer | ||
从 DisplayObjectContainer 的子列表中指定的 index 位置删除子 DisplayObject。 | DisplayObjectContainer | ||
从 DisplayObjectContainer 实例的子级列表中删除所有子 DisplayObject 实例。 | DisplayObjectContainer | ||
从 EventDispatcher 对象中删除侦听器。 | EventDispatcher | ||
从列表中删除指定项目。 | ComboBox | ||
删除指定索引位置处的项目。 | ComboBox | ||
用其他项目替换指定索引位置处的项目。 | ComboBox | ||
显示虚拟键盘。 | InteractiveObject | ||
更改现有子项在显示对象容器中的位置。 | DisplayObjectContainer | ||
设置此组件的焦点。 | UIComponent | ||
设置循环操作动态属性的可用性。 | Object | ||
将组件设置为指定宽度和高度。 | UIComponent | ||
对此组件实例设置样式属性。 | UIComponent | ||
对当前数据提供程序的元素进行排序。 | ComboBox | ||
以当前数据提供程序的一个或多个字段为依据对其元素进行排序。 | ComboBox | ||
允许用户拖动指定的 Sprite。 | Sprite | ||
使用户可以在启用触摸的设备上拖动指定的 Sprite。 | Sprite | ||
对源起于此对象的所有 MovieClip 递归停止时间轴执行。 | DisplayObjectContainer | ||
结束 startDrag() 方法。 | Sprite | ||
结束 startTouchDrag() 方法,用于启用触摸的设备。 | Sprite | ||
交换两个指定子对象的 Z 轴顺序(从前到后顺序)。 | DisplayObjectContainer | ||
在子级列表中两个指定的索引位置,交换子对象的 Z 轴顺序(前后顺序)。 | DisplayObjectContainer | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
返回指定对象的字符串表示形式。 | Object | ||
验证并更新此对象的属性和布局,如果需要的话重绘对象。 | UIComponent | ||
返回指定对象的原始值。 | Object | ||
检查是否用此 EventDispatcher 对象或其任何祖代为指定事件类型注册了事件侦听器。 | EventDispatcher |
事件 | 摘要 | 由以下参数定义 | ||
---|---|---|---|---|
[广播事件] Flash Player 或 AIR 应用程序获得操作系统焦点并变为活动状态时将调度此事件。 | EventDispatcher | |||
将显示对象添加到显示列表中时调度。 | DisplayObject | |||
在将显示对象直接添加到舞台显示列表或将包含显示对象的子树添加至舞台显示列表中时调度。 | DisplayObject | |||
当用户更改 ComboBox 组件中的选定内容时调度,或者如果 ComboBox 组件可编辑,每当用户在文本字段中键击时调度。 | ComboBox | |||
当用户从文本上下文菜单中选择“清除”(或“删除”)时调度。 | InteractiveObject | |||
用户在同一 InteractiveObject 上按下并释放用户指针设备的主按钮时调度。 | InteractiveObject | |||
当因任何原因而取消下拉列表时调度。 | ComboBox | |||
当用户手势触发 AIR 应用程序中与此交互式对象相关联的上下文菜单时调度。 | InteractiveObject | |||
在用户为复制操作激活特定于平台的加速键组合或从文本上下文菜单中选择“复制”时调度。 | InteractiveObject | |||
在用户为剪切操作激活特定于平台的加速键组合或从文本上下文菜单中选择“剪切”时调度。 | InteractiveObject | |||
[广播事件] Flash Player 或 AIR 应用程序失去操作系统焦点并变为非活动状态时将调度此事件。 | EventDispatcher | |||
如果 InteractiveObject 的 doubleClickEnabled 标志设置为 true,当用户在该对象上快速连续按下两次并释放指针设备的主按钮时调度。 | InteractiveObject | |||
在以下情况下调度:editable 属性设置为 true,并且用户在可编辑文本字段中键入时按下 Enter。 | ComboBox | |||
[播放事件] 播放头进入新帧时调度。 | DisplayObject | |||
[广播事件] 播放头退出当前帧时调度。 | DisplayObject | |||
显示对象获得焦点后调度。 | InteractiveObject | |||
显示对象失去焦点后调度。 | InteractiveObject | |||
[广播事件] 在帧显示对象的构造函数运行之后但在帧脚本运行之前调度。 | DisplayObject | |||
当用户使用 InteractiveObject 实例沿触摸面边缘创建接触点时调度(如在 Siri Remote for Apple TV 上沿触摸面边缘轻击)。有些设备也可能将这种接触解释为多个触摸事件的组合。 | InteractiveObject | |||
当用户在启用触摸设备上的同一 InteractiveObject 实例上按下两个接触点时(例如,在配有触摸屏的移动电话或平板电脑上的显示对象上按下和释放两个手指)调度。 | InteractiveObject | |||
当用户在启用触摸的设备上的 InteractiveObject 实例上移动接触点时(例如,在配有触摸屏的移动电话或平板电脑上的显示对象上从左向右移动手指)调度。 | InteractiveObject | |||
当用户在接触点处使用 InteractiveObject 实例执行旋转手势时(例如,将两个手指放在屏幕上,然后在配有触摸屏的移动电话或平板电脑上的显示对象上旋转这两个手指)调度。 | InteractiveObject | |||
当用户在接触点处使用 InteractiveObject 实例执行滑动手势(例如,在配有触摸屏的移动电话或平板电脑上用三根手指触摸屏幕,然后在一个显示对象上平行移动这三根手指)时调度。 | InteractiveObject | |||
当用户使用 InteractiveObject 实例创建接触点,然后点击启用触屏的设备时(例如,将几个手指放在显示对象上以打开菜单,然后点击一个手指在配有触摸屏的移动电话或平板电脑上选择一个菜单项)调度。 | InteractiveObject | |||
当用户在接触点处使用 InteractiveObject 实例执行缩放手势操作时(例如,将两个手指放在屏幕上,然后在配有触摸屏的移动电话或平板电脑上的显示对象上快速分开手指)调度。 | InteractiveObject | |||
在组件可见性从可见改为不可见以后调度。 | UIComponent | |||
此事件被调度到任何支持使用 IME 进行内联输入的客户端应用程序 | InteractiveObject | |||
定义 itemRollOut 事件对象的 type 属性值。 | ComboBox | |||
定义 itemRollOver 事件对象的 type 属性值。 | ComboBox | |||
用户按下某个键时调度。 | InteractiveObject | |||
用户尝试使用键盘导航更改焦点时调度。 | InteractiveObject | |||
用户释放某个键时调度。 | InteractiveObject | |||
当用户在同一 InteractiveObject 上按下并释放用户指针设备的中间按钮时调度。 | InteractiveObject | |||
当用户在 InteractiveObject 实例上按下指针设备的中间按钮时调度。 | InteractiveObject | |||
当用户在 InteractiveObject 实例上释放指针设备按钮时调度。 | InteractiveObject | |||
当用户在 InteractiveObject 实例上按下指针设备按钮时调度。 | InteractiveObject | |||
用户尝试使用指针设备更改焦点时调度。 | InteractiveObject | |||
用户移动 InteractiveObject 上的指针设备时调度。 | InteractiveObject | |||
用户将指针设备从 InteractiveObject 实例上移开时调度。 | InteractiveObject | |||
用户将指针设备移动到 InteractiveObject 实例上时调度。 | InteractiveObject | |||
当用户在 InteractiveObject 实例上释放指针设备按钮时调度。 | InteractiveObject | |||
当鼠标滚轮滚动到 InteractiveObject 实例上时调度。 | InteractiveObject | |||
在移动组件以后调度。 | UIComponent | |||
当用户释放拖动手势时由拖动启动器 InteractiveObject 调度。 | InteractiveObject | |||
在将拖动对象放置到目标上且已通过对 DragManager.acceptDragDrop() 的调用接受该放置操作时,由目标 InteractiveObject 调度。 | InteractiveObject | |||
当拖动手势进入其边界时由 InteractiveObject 调度。 | InteractiveObject | |||
当拖动手势离开其边界时由 InteractiveObject 调度。 | InteractiveObject | |||
当拖动手势保持在其边界内时,由 InteractiveObject 持续调度。 | InteractiveObject | |||
在拖动操作开始时由在 DragManager.doDrag() 调用中指定为拖动启动器的 InteractiveObject 调度。 | InteractiveObject | |||
在拖动操作期间由在 DragManager.doDrag() 调用中指定为拖动启动器的 InteractiveObject 调度。 | InteractiveObject | |||
当用户单击下拉按钮以显示下拉列表时调度。 | ComboBox | |||
在用户为粘贴操作激活特定于平台的加速键组合或从文本上下文菜单中选择“粘贴”时调度。 | InteractiveObject | |||
当用户将活动笔针放低经过屏幕的邻近检测阈值上时调度。 | InteractiveObject | |||
当用户将活动笔针抬高放在屏幕的邻近检测阈值上时调度。 | InteractiveObject | |||
当用户将活动笔针移动到屏幕上但仍保留在邻近检测阈值中时调度。 | InteractiveObject | |||
当用户直接将活动笔针从此 InteractiveObject 上移开但仍保留在屏幕的邻近检测阈值中时调度。 | InteractiveObject | |||
当用户直接将活动笔针移动到此 InteractiveObject 上但仍保留在屏幕的邻近检测阈值中时调度。 | InteractiveObject | |||
当用户从此 InteractiveObject 及其任一子项中移开而仍保留在屏幕的邻近检测阈值中时调度。 | InteractiveObject | |||
当用户将活动笔针从显示列表中子项的对象树中滑过此 InteractiveObject 时(而仍保留在屏幕的邻近检测阈值中)时调度。 | InteractiveObject | |||
在用户首先在 InteractiveObject 实例上按下按钮,然后将指针设备移离 InteractiveObject 实例,释放指针设备上的按钮时调度。 | InteractiveObject | |||
将要从显示列表中删除显示对象时调度。 | DisplayObject | |||
在从显示列表中直接删除显示对象或删除包含显示对象的子树时调度。 | DisplayObject | |||
[广播事件] 将要更新和呈现显示列表时调度。 | DisplayObject | |||
在调整组件大小以后调度。 | UIComponent | |||
当用户在同一 InteractiveObject 上按下并释放用户指针设备的右按钮时调度。 | InteractiveObject | |||
当用户在 InteractiveObject 实例上按下指针设备按钮时调度。 | InteractiveObject | |||
当用户在 InteractiveObject 实例上释放指针设备按钮时调度。 | InteractiveObject | |||
用户将指针设备从 InteractiveObject 实例上移开时调度。 | InteractiveObject | |||
用户将指针设备移动到 InteractiveObject 实例上时调度。 | InteractiveObject | |||
当用户滚动 ComboBox 组件的下拉列表时调度。 | ComboBox | |||
在用户为全选操作激活特定于平台的加速键组合或从文本上下文菜单中选择“全选”时调度。 | InteractiveObject | |||
在组件可见性从不可见改为可见以后调度。 | UIComponent | |||
在放开软键盘之后立即调度。 | InteractiveObject | |||
在放开软键盘之前立即调度。 | InteractiveObject | |||
在隐藏软键盘之后立即调度。 | InteractiveObject | |||
对象的 tabChildren 标志值发生更改时调度。 | InteractiveObject | |||
对象的 tabEnabled 标志发生更改时调度。 | InteractiveObject | |||
对象的 tabIndex 属性值发生更改时调度。 | InteractiveObject | |||
当用户输入一个或多个文本字符时调度。 | InteractiveObject | |||
当用户第一次触摸启用触摸的设备时(例如,用手指触摸配有触摸屏的移动电话或平板)调度。 | InteractiveObject | |||
当用户移除与启用触摸的设备的接触时(例如,将手指从配有触摸屏的移动电话或平板电脑上抬起)调度。 | InteractiveObject | |||
当用户触碰设备时进行调度,而且会连续调度,直到接触点被删除。 | InteractiveObject | |||
当用户将接触点从启用触摸的设备上的 InteractiveObject 实例移开时(例如,在配有触摸屏的移动电话或平板电脑上,将手指从一个显示对象拖到另一个显示对象)调度。 | InteractiveObject | |||
当用户在启用触摸的设备的 InteractiveObject 实例上移动接触点时(例如,在配有触摸屏的移动电话或平板电脑上,将手指从显示对象外的一点拖动到显示对象上的一点)调度。 | InteractiveObject | |||
当用户移动接触点,使其远离启用触摸的设备上的 InteractiveObject 实例时(例如,在配有触摸屏的移动电话或平板电脑上将一个手指从显示对象上的一点移动到显示对象外的一点)调度。 | InteractiveObject | |||
当用户在启用触摸的设备的 InteractiveObject 实例上移动接触点时(例如,在配有触摸屏的移动电话或平板电脑上,将手指从显示对象外的一点拖动到显示对象上的一点)调度。 | InteractiveObject | |||
当用户在启用触摸设备上的已启动接触的同一 InteractiveObject 实例上抬起接触点时(例如,在配有触摸屏的移动电话或平板的显示对象上的某一点处按下并释放手指)调度。 | InteractiveObject |
样式为常见样式,或与特定主题关联。如果为常见样式,则可以用于任何主题。如果样式与特定主题关联,则只有应用程序使用该主题时才能使用该样式。
样式 | 说明 | 由以下参数定义 | ||
---|---|---|---|---|
buttonWidth | 类型: Number 格式: Length 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于分隔组件的右边缘和代表所选项目的文本的空白(以像素为单位)。该按钮是背景外观的一部分。 默认值为 24 。 | ComboBox | ||
cellRenderer | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 为组件中的每个项目提供单元格渲染器的类。 默认值为 fl.controls.listClasses.CellRenderer 。 | ComboBox | ||
contentPadding | 类型: Number 格式: Length 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 内容(组件和滚动条)和背景外边缘之间的填充(以像素为单位)。 默认值为 3 。 | ComboBox | ||
disabledAlpha | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 当 enabled 属性为 false 时将列表设置为的 Alpha 值。
默认值为 0.5 。 | ComboBox | ||
disabledSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类提供将 ComboBox 组件的 enabled 属性设置为 false 时在该组件中显示的背景。
默认值为 ComboBox_disabledSkin 。 | ComboBox | ||
类型: flash.text.TextFormat 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于在禁用了按钮的情况下呈现组件标签的 TextFormat 对象. | UIComponent | |||
downArrowDisabledSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作当禁用了滚动条时滚动条的向下箭头按钮的外观。如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。 默认值为 ScrollArrowDown_disabledSkin 。 | ComboBox | ||
downArrowDownSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作当单击滚动条的向下箭头按钮时该按钮的外观。如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。 默认值为 ScrollArrowDown_downSkin 。 | ComboBox | ||
downArrowOverSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作当鼠标指针在滚动条的向下箭头按钮上方时该按钮的外观。如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。 默认值为 ScrollArrowDown_overSkin 。 | ComboBox | ||
downArrowUpSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作滚动条的向下箭头按钮的外观。如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。 默认值为 ScrollArrowDown_upSkin 。 | ComboBox | ||
downSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类提供当按下鼠标按键时 ComboBox 组件中的背景。 默认值为 ComboBox_downSkin 。 | ComboBox | ||
embedFonts | 类型: Boolean 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 指示是否使用嵌入字体轮廓呈现文本字段。如果该值为 true ,则 Flash Player 使用嵌入字体轮廓呈现文本字段。如果该值为 false ,则 Flash Player 使用设备字体呈现文本字段。
如果将文本字段的 false 。 | ComboBox | ||
类型: Number 格式: Length 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于分隔组件的外边框和焦点指示符的外边框的填充(以像素为单位). | UIComponent | |||
类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于显示焦点指示符的外观. | UIComponent | |||
overSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类提供当鼠标光标位于 ComboBox 组件上方时在该组件中显示的背景。 默认值为 ComboBox_overSkin 。 | ComboBox | ||
repeatDelay | 类型: Number 格式: Time 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 在第一次调度 buttonDown 事件之后,发送第二个 buttonDown 事件之前等待的时间(以毫秒为单位)。
默认值为 500 。 | ComboBox | ||
repeatInterval | 类型: Number 格式: Time 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 在由 repeatDelay 样式指定的延迟之后调度的 buttonDown 事件之间的间隔(以毫秒为单位)。
默认值为 35 。 | ComboBox | ||
类型: flash.text.TextFormat 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于呈现组件标签的 TextFormat 对象. | UIComponent | |||
textPadding | 类型: Number 格式: Length 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于分隔边框和代表所选项目的文本的空白(以像素为单位)。 默认值为 3 。 | ComboBox | ||
thumbArrowUpSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作滚动条的缩略图的外观。 默认值为 ScrollThumb_upSkin 。 | ComboBox | ||
thumbDisabledSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于指示缩略图的禁用状态的外观。 默认值为 ScrollThumb_upSkin 。 | ComboBox | ||
thumbDownSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作当单击滚动条的缩略图时该缩略图的外观。 默认值为 ScrollThumb_downSkin 。 | ComboBox | ||
thumbIcon | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作滚动条的缩略图的图标。 默认值为 ScrollBar_thumbIcon 。 | ComboBox | ||
thumbOverSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作当鼠标指针在滚动条的缩略图上方时该缩略图的外观。 默认值为 ScrollThumb_overSkin 。 | ComboBox | ||
trackDisabledSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于指示被禁用轨道的外观。 默认值为 ScrollTrack_Skin 。 | ComboBox | ||
trackDownSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于指示被禁用外观的按下状态的外观。 默认值为 ScrollTrack_Skin 。 | ComboBox | ||
trackOverSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于指示滚动轨道的鼠标悬停状态的外观。 默认值为 ScrollTrack_Skin 。 | ComboBox | ||
trackUpSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 用于指示滚动轨道的鼠标松开状态的外观。 默认值为 ScrollTrack_Skin 。 | ComboBox | ||
upArrowDisabledSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作当禁用了滚动条时滚动条的向上箭头按钮的外观。如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。 默认值为 ScrollArrowUp_disabledSkin 。 | ComboBox | ||
upArrowDownSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作当单击滚动条的向上箭头按钮时该按钮的外观。如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。 默认值为 ScrollArrowUp_downSkin 。 | ComboBox | ||
upArrowOverSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作当鼠标指针在滚动条的向上箭头按钮上方时该按钮的外观。如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。 默认值为 ScrollArrowUp_overSkin 。 | ComboBox | ||
upArrowUpSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 类的名称,该类用作滚动条的向上箭头按钮的外观。如果以图形化方式或编程方式更改该外观,您应当确保新外观与轨道具有相同的高度(对于水平滚动条)或高度(对于垂直滚动条)。 默认值为 ScrollArrowUp_upSkin 。 | ComboBox | ||
upSkin | 类型: Class 语言版本: ActionScript 3.0 产品版本: Flash CS3 运行时版本: Flash9.0.28.0, AIR 1.0 提供 ComboBox 组件背景的类的名称。 默认值为 ComboBox_upSkin 。 | ComboBox |
dataProvider | 属性 |
dataProvider:DataProvider
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取或设置要查看的项目列表的数据模型。 数据提供程序可由多个基于列表的组件共享。 对数据提供程序所做的更改会立即应用于将其用作数据源的所有组件。
实现
public function get dataProvider():DataProvider
public function set dataProvider(value:DataProvider):void
相关 API 元素
示例 ( 如何使用本示例 )
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 | 属性 |
dropdownWidth | 属性 |
dropdownWidth:Number
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.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
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.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
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取或设置 dataProvider
对象中的字段名称,该字段名称将显示为 TextInput 字段和下拉列表的标签。
默认情况下,组件将显示各 dataProvider
项目的 label
属性。 如果 dataProvider
项目不包含 label
属性,则可以设置 labelField
属性以使用其他属性。
注意:labelField
属性不在 labelFunction
属性设置为回调函数时使用。
默认值为 "label"。
实现
public function get labelField():String
public function set labelField(value:String):void
相关 API 元素
示例 ( 如何使用本示例 )
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
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取或设置用于获得项的标签的函数。
默认情况下,组件将显示 dataProvider
项目的 label
属性。 但某些数据集可能没有 label
字段,或者没有不需修改其值即可用作标签的字段。 例如,某给定数据集可能存储了全名,但将全名分开保存在 lastName
和 firstName
字段中。 在这种情况下,此属性可能用来设置一个回调函数,该函数将 lastName
和 firstName
字段的值连接在一起成为全名字符串以供显示。
注意:labelField
属性不在 labelFunction
属性设置为回调函数时使用。
实现
public function get labelFunction():Function
public function set labelFunction(value:Function):void
相关 API 元素
示例 ( 如何使用本示例 )
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
[只读] 语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取列表中的项目数。 此属性属于 List 组件,但是不能从 ComboBox 实例进行访问。
默认值为 0。
实现
public function get length():int
相关 API 元素
示例 ( 如何使用本示例 )
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
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.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
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取或设置用户可以在文本字段中输入的字符。 如果 restrict
属性的值为一串字符,则只能在文本字段中输入该字符串中的字符。字符串的读取顺序为从左到右。如果 restrict
属性的值为 null
,则可以输入任何字符。如果 restrict
属性的值为空字符串 (""),则不能输入任何字符。可以使用连字符 (-) 指定一个范围。它只限制用户交互;脚本可将任何字符放入文本字段中。
默认值为 null。
实现
public function get restrict():String
public function set restrict(value:String):void
相关 API 元素
示例 ( 如何使用本示例 )
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
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取或设置没有滚动条的下拉列表中可显示的最大行数。 如果下拉列表中的项数超过该值,则会调整列表的大小,并在必要时显示滚动条。 如果下拉列表中的项数小于该值,则会调整下拉列表的大小以适应其所包含的项数。
此行为与 List 组件的行为不同,List 组件会始终显示由其 rowCount
属性指定的行数,即使其中出现空白也是如此。
默认值为 5。
实现
public function get rowCount():uint
public function set rowCount(value:uint):void
相关 API 元素
示例 ( 如何使用本示例 )
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
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取或设置单选列表中的选定项目的索引。 单选列表是一次只能从中选择一个项目的列表。
值为 -1 指示未选择任何项目;如果选择了多项,则该值等于所选的一组项目中最后一个选定项目的索引。
使用 ActionScript 设置此属性时,位于指定索引处的项目将替换当前选定的内容。 通过编程方式更改选定内容时,不会调度 change
事件对象。
默认值为 0。
实现
public function get selectedIndex():int
public function set selectedIndex(value:int):void
相关 API 元素
示例 ( 如何使用本示例 )
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
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取或设置下拉列表中所选项目的值。如果用户在可编辑 ComboBox 组件的文本框中输入文本,则 selectedItem
属性为 undefined
。只有当用户手动或使用 ActionScript 从下拉框中选择一个项目时,此属性才具有值。如果 ComboBox 组件不可编辑,则 selectedItem
属性值始终有效。如果可编辑 ComboBox 组件的下拉列表中不存在任何项目,则此属性值为 null
。
默认值为 null。
实现
public function get selectedItem():Object
public function set selectedItem(value:Object):void
相关 API 元素
示例 ( 如何使用本示例 )
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
[只读] 语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取显示在 ComboBox 组件的 TextInput 部分中的字符串。 该值可通过使用 labelField
或 labelFunction
属性由数据计算得出。
实现
public function get selectedLabel():String
相关 API 元素
示例 ( 如何使用本示例 )
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
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.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:fl.controls:TextInput
[只读] 语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
获取对 ComboBox 组件所包含的 TextInput 组件的引用。 使用此属性访问并操作基础 TextInput 组件。 例如,可以使用此属性更改文本框的选定内容或者限制可以在文本框中输入的字符。
实现
public function get textField():fl.controls: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
[只读] 语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
创建新的 ComboBox 组件实例。
addItem | () | 方法 |
addItemAt | () | 方法 |
close | () | 方法 |
public function close():void
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
关闭下拉列表。
注意:调用此方法将导致 close
事件被调度。 如果 ComboBox 已关闭,则调用此方法无效。
相关 API 元素
示例 ( 如何使用本示例 )
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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
检索当前组件的默认样式映射。 样式映射包含适合组件的类型,具体取决于组件使用的样式。 例如,disabledTextFormat
样式包含 null
值或 TextFormat 对象。 可以使用这些样式并对当前组件调用 setStyle()
。下面的代码覆盖指定组件上默认的 disabledTextFormat
样式:
componentInstance.setStyle("disabledTextFormat", new TextFormat());
Object — 默认样式对象。
|
相关 API 元素
示例 ( 如何使用本示例 )
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 | () | 方法 |
open | () | 方法 |
removeAll | () | 方法 |
public function removeAll():void
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
删除列表中的所有项目。
相关 API 元素
示例 ( 如何使用本示例 )
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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
从列表中删除指定项目。
参数
item:Object — 要删除的项目。
|
Object — 被删除的项目。
|
相关 API 元素
示例 ( 如何使用本示例 )
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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
删除指定索引位置处的项目。 索引大于指定索引的项目的索引位置在数组中提前 1。
这是 List 组件的一个方法,可以从 ComboBox 组件的实例中获得。
参数
index:uint — 要删除的项目的索引。
|
引发
RangeError — 指定的索引小于 0 或大于等于数据提供程序的长度。
|
相关 API 元素
replaceItemAt | () | 方法 |
public function replaceItemAt(item:Object, index:uint):Object
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
用其他项目替换指定索引位置处的项目。 此方法会修改 List 组件的数据提供程序。 如果与其他组件共享数据提供程序,则向这些组件提供的数据也会更新。
参数
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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
对当前数据提供程序的元素进行排序。 此方法将基于元素的 Unicode 值执行排序。 ASCII 是 Unicode 的一个子集。
参数
... sortArgs — 排序要依照的参数。
|
* — 返回值取决于是否向此方法传递任何参数。 有关详细信息,请参阅 Array.sort() 方法。请注意,当 sortArgs 参数设置为 Array.UNIQUESORT 时此方法返回 0。
|
相关 API 元素
示例 ( 如何使用本示例 )
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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
以当前数据提供程序的一个或多个字段为依据对其元素进行排序。
参数
field:String — 要依据其进行排序的字段。
| |
options:Object (default = null ) — 用于覆盖默认排序行为的排序参数。 使用按位 OR (|) 运算符分隔两个或更多参数。
|
* — 返回值取决于是否向此方法传递任何参数。 有关详细信息,请参阅 Array.sortOn() 方法。请注意,当 sortOption 参数设置为 Array.UNIQUESORT 时此方法返回 0。
|
相关 API 元素
示例 ( 如何使用本示例 )
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, Apples
sortItemsOn()
方法对项目进行排序:
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
属性 Event.type =
flash.events.Event.CHANGE
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
当用户更改 ComboBox 组件中的选定内容时调度,或者如果 ComboBox 组件可编辑,每当用户在文本字段中键击时调度。
注意:当下表指定更改
事件冒泡时,不会对 fl.controls.ComboBox 控件冒泡。
Event.CHANGE
常量定义 change
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | true |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 已修改其值的对象。target 不一定是显示列表中注册此事件侦听器的对象。请使用 currentTarget 属性来访问显示列表中当前正在处理此事件的对象。 |
close | 事件 |
flash.events.Event
属性 Event.type =
flash.events.Event.CLOSE
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
当因任何原因而取消下拉列表时调度。
Event.CLOSE
常量定义 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(); } }
相关 API 元素
enter | 事件 |
fl.events.ComponentEvent
属性 ComponentEvent.type =
fl.events.ComponentEvent.ENTER
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
在以下情况下调度:editable
属性设置为 true
,并且用户在可编辑文本字段中编辑时按下 Enter。
enter
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
itemRollOut | 事件 |
fl.events.ListEvent
属性 ListEvent.type =
fl.events.ListEvent.ITEM_ROLL_OUT
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
当用户将指针滑离组件中的项目时调度。
定义
itemRollOut
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
columnIndex | 包含呈示器的列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
index | 包含渲染器的 DataProvider 中从零开始的索引。 |
item | 对属于渲染器的数据的引用。 |
rowIndex | 包含渲染器的行的从零开始的索引。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
相关 API 元素
itemRollOver | 事件 |
fl.events.ListEvent
属性 ListEvent.type =
fl.events.ListEvent.ITEM_ROLL_OVER
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
当用户将指针滑过组件中的项目时调度。
定义
itemRollOver
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
columnIndex | 包含呈示器的列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
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; }
相关 API 元素
open | 事件 |
flash.events.Event
属性 Event.type =
flash.events.Event.OPEN
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
当用户单击下拉按钮以显示下拉列表时调度。如果 ComboBox 组件不可编辑,当用户单击文本字段时也会调度。
Event.OPEN
常量用于定义 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(); }
相关 API 元素
scroll | 事件 |
fl.events.ScrollEvent
属性 ScrollEvent.type =
fl.events.ScrollEvent.SCROLL
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
当用户滚动 ComboBox 组件的下拉列表时调度。
定义scroll
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
delta | 1 ;一个指示完成了多少滚动量的值。
|
direction | vertical ;ScrollBar 的方向。 |
position | 0 ;Scrollbar 滑块移动后的位置。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
- 将 ComboBox 拖到舞台上,将其命名为
cb
。 - 将该代码作为 ComboBoxExample.as 另存到 FLA 文件所在的同一目录中。
- 将 FLA 中的 DocumentClass 设置为 ComboBoxExample。
package { import flash.display.Sprite import flash.text.TextField; import flash.events.Event; import fl.controls.ComboBox; public class ComboBoxExample extends Sprite { private var tf:TextField; public function ComboBoxExample() { setupComboBox(); setupTextField(); } private function setupTextField():void { tf = new TextField(); tf.x = 180; tf.y = 15; tf.autoSize = "left"; addChild(tf); } private function setupComboBox():void { cb.setSize(150,22); 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); } } }
Tue Jun 12 2018, 11:04 AM Z