包 | fl.events |
类 | public class DataChangeEvent |
继承 | DataChangeEvent Event Object |
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
该类提供下列事件:
-
DataChangeEvent.DATA_CHANGE
:在组件数据更改时调度。
相关 API 元素
公共属性
属性 | 由以下参数定义 | ||
---|---|---|---|
bubbles : Boolean [只读]
表示事件是否为冒泡事件。 | Event | ||
cancelable : Boolean [只读]
表示是否可以阻止与事件相关联的行为。 | Event | ||
changeType : String [只读]
获取触发事件的更改类型。 | DataChangeEvent | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
currentTarget : Object [只读]
当前正在使用某个事件侦听器处理 Event 对象的对象。 | Event | ||
endIndex : uint [只读]
获取更改的项目数组中最后一个更改的项目的索引。 | DataChangeEvent | ||
eventPhase : uint [只读]
事件流中的当前阶段。 | Event | ||
items : Array [只读]
获取包含更改的项目的数组。 | DataChangeEvent | ||
startIndex : uint [只读]
获取更改的项目数组中第一个更改的项目的索引。 | DataChangeEvent | ||
target : Object [只读]
事件目标。 | Event | ||
type : String [只读]
事件的类型。 | Event |
公共方法
方法 | 由以下参数定义 | ||
---|---|---|---|
DataChangeEvent(eventType:String, changeType:String, items:Array, startIndex:int = -1, endIndex:int = -1)
使用指定的参数创建新的 DataChangeEvent 对象。 | DataChangeEvent | ||
[覆盖]
创建 DataEvent 对象的副本,并设置每个参数的值以匹配原始参数值。 | DataChangeEvent | ||
用于在自定义 ActionScript 3.0 Event 类中实现 toString() 方法的实用程序函数。 | Event | ||
表示对象是否已经定义了指定的属性。 | Object | ||
检查是否已对事件调用 preventDefault() 方法。 | Event | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
如果可以取消事件的默认行为,则取消该行为。 | Event | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
设置循环操作动态属性的可用性。 | Object | ||
防止对事件流中当前节点中和所有后续节点中的事件侦听器进行处理。 | Event | ||
防止对事件流中当前节点的后续节点中的所有事件侦听器进行处理。 | Event | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
[覆盖]
返回一个字符串,其中包含 DataChangeEvent 对象的所有属性。 | DataChangeEvent | ||
返回指定对象的原始值。 | Object |
公共常量
常量 | 由以下参数定义 | ||
---|---|---|---|
DATA_CHANGE : String = "dataChange" [静态]
定义 dataChange 事件对象的 type 属性值。 | DataChangeEvent | ||
PRE_DATA_CHANGE : String = "preDataChange" [静态]
定义 preDataChange 事件对象的 type 属性值。 | DataChangeEvent |
属性详细信息
changeType | 属性 |
endIndex | 属性 |
items | 属性 |
startIndex | 属性 |
构造函数详细信息
DataChangeEvent | () | 构造函数 |
public function DataChangeEvent(eventType:String, changeType:String, items:Array, startIndex:int = -1, endIndex:int = -1)
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
使用指定的参数创建新的 DataChangeEvent 对象。
参数eventType:String — change 事件的类型。
| |
changeType:String — 所做更改的类型。DataChangeType 类定义此参数的可能值。
| |
items:Array — 更改的项目的列表。
| |
startIndex:int (default = -1 ) — 所更改的第一个项目的索引。
| |
endIndex:int (default = -1 ) — 所更改的最后一个项目的索引。
|
方法详细信息
clone | () | 方法 |
toString | () | 方法 |
override public function toString():String
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
返回一个字符串,其中包含 DataChangeEvent 对象的所有属性。字符串的格式如下:
[DataChangeEvent type=value changeType=value startIndex=value endIndex=value bubbles=value cancelable=value
]
String — 一个字符串,其中包含 DataChangeEvent 对象的所有属性。
|
常量详细信息
DATA_CHANGE | 常量 |
public static const DATA_CHANGE:String = "dataChange"
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
定义 dataChange
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
changeType | 标识所做更改的类型。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
endIndex | 标识最后一个更改的项目的索引。 |
items | 列出更改的项目的数组。 |
startIndex | 标识第一个更改的项目的索引。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
相关 API 元素
PRE_DATA_CHANGE | 常量 |
public static const PRE_DATA_CHANGE:String = "preDataChange"
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
定义 preDataChange
事件对象的 type
属性值。该事件对象在更改组件数据之前调度。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
changeType | 标识所要做的更改的类型。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
endIndex | 标识要更改的最后一个项目的索引。 |
items | 列出更改的项目的数组。 |
startIndex | 标识要更改的第一个项目的索引。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
相关 API 元素
示例 如何使用本示例
DataChangeEventExample.as
此示例演示如何侦听 DataProvider 发出的 DataChangeEvent 广播,并使用其事件来手动填充 DataGrid。
- 将 DataGrid 和 Button 类添加到库中。
- 将此代码另存为 DataChangeEventExample.as 并保存到 FLA 文件所在的同一目录中。
- 将 FLA 中的 DocumentClass 设置为 DataChangeEventExample。
package { import flash.display.Sprite; import flash.events.MouseEvent; import fl.data.DataProvider; import fl.events.DataChangeEvent; import fl.controls.DataGrid; import fl.controls.Button; public class DataChangeEventExample extends Sprite { private var dg:DataGrid; private var dp:DataProvider; private var names:Array = [ "Mary", "Bob", "Sue", "Joe" ]; public function DataChangeEventExample() { dp = new DataProvider(); dp.addEventListener(DataChangeEvent.DATA_CHANGE,dataChanged); dg = new DataGrid(); dg.move(10,45); dg.setSize(300,250); dg.columns = [ "name", "phone", "email" ]; addChild(dg); var addContactBtn:Button = new Button(); addContactBtn.label = "Add Contact"; addContactBtn.move(10,10); addContactBtn.addEventListener(MouseEvent.CLICK, addContact); addChild(addContactBtn); } private function getRandomPhone():String { return randomDigit()+randomDigit()+randomDigit()+"-"+randomDigit()+randomDigit()+randomDigit()+"-"+randomDigit()+randomDigit()+randomDigit()+randomDigit(); } private function randomDigit():String { return String(Math.round(Math.random()*10)%10); } private function getRandomName():String { return names[Math.round(Math.random()*names.length)%names.length]; } private function addContact(e:MouseEvent):void { var randomName:String = getRandomName() dp.addItem( { name: randomName, phone: getRandomPhone(), email: randomName + "@fictitious.com" } ); } private function dataChanged(e:DataChangeEvent):void { var changedItems:Array = e.items; dg.addItem(changedItems[0]); } } }
Tue Jun 12 2018, 11:04 AM Z