fl.events
public class DataChangeEvent
继承DataChangeEvent Inheritance Event Inheritance Object

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

DataChangeEvent 类定义事件,该事件在与组件关联的数据更改时调度。List、DataGrid、TileList 和 ComboBox 组件使用该事件。

该类提供下列事件:

查看示例

另请参见

DataChangeType



公共 属性
 属性定义方
 Inheritedbubbles : Boolean
[read-only] 指示事件是否为冒泡事件。
Event
 Inheritedcancelable : Boolean
[read-only] 指示是否可以阻止与事件相关联的行为。
Event
  changeType : String
[read-only] 获取触发事件的更改类型。
DataChangeEvent
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 InheritedcurrentTarget : Object
[read-only] 当前正在使用某个事件侦听器处理 Event 对象的对象。
Event
  endIndex : uint
[read-only] 获取更改的项目数组中最后一个更改的项目的索引。
DataChangeEvent
 InheritedeventPhase : uint
[read-only] 事件流中的当前阶段。
Event
  items : Array
[read-only] 获取包含更改的项目的数组。
DataChangeEvent
 Inheritedprototype : Object
[static] 对类或函数对象的原型对象的引用。
Object
  startIndex : uint
[read-only] 获取更改的项目数组中第一个更改的项目的索引。
DataChangeEvent
 Inheritedtarget : Object
[read-only] 事件目标。
Event
 Inheritedtype : String
[read-only] 事件的类型。
Event
公共 方法
 方法定义方
  
DataChangeEvent(eventType:String, changeType:String, items:Array, startIndex:int = -1, endIndex:int = -1)
使用指定的参数创建新的 DataChangeEvent 对象。
DataChangeEvent
  
创建 DataEvent 对象的副本,并设置每个参数的值以匹配原始参数值。
DataChangeEvent
 Inherited
formatToString(className:String, ... arguments):String
在自定义 Event 类中实现 toString() 方法的实用程序函数。
Event
 Inherited
指示对象是否已经定义了指定的属性。
Object
 Inherited
检查是否已对事件调用 preventDefault()。
Event
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
 Inherited
如果可以取消事件的默认行为,则取消该行为。
Event
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
 Inherited
设置循环操作动态属性的可用性。
Object
 Inherited
防止对事件流中当前节点中和所有后续节点中的事件侦听器进行处理。
Event
 Inherited
防止对事件流中当前节点的后续节点中的所有事件侦听器进行处理。
Event
  
返回一个字符串,其中包含 DataChangeEvent 对象的所有属性。
DataChangeEvent
 Inherited
返回指定对象的原始值。
Object
公共 常量
 常量定义方
 InheritedACTIVATE : String = "activate"
[static] 定义 activate 事件对象的 type 属性值。
Event
 InheritedADDED : String = "added"
[static] 定义 added 事件对象的 type 属性值。
Event
 InheritedADDED_TO_STAGE : String = "addedToStage"
[static] 定义 addedToStage 事件对象的 type 属性值。
Event
 InheritedCANCEL : String = "cancel"
[static] 定义 cancel 事件对象的 type 属性值。
Event
 InheritedCHANGE : String = "change"
[static] 定义 change 事件对象的 type 属性值。
Event
 InheritedCLOSE : String = "close"
[static] 定义 close 事件对象的 type 属性值。
Event
 InheritedCOMPLETE : String = "complete"
[static] 定义 complete 事件对象的 type 属性值。
Event
 InheritedCONNECT : String = "connect"
[static] 定义 connect 事件对象的 type 属性值。
Event
  DATA_CHANGE : String = "dataChange"
[static] 定义 dataChange 事件对象的 type 属性值。
DataChangeEvent
 InheritedDEACTIVATE : String = "deactivate"
[static] 定义 deactivate 事件对象的 type 属性值。
Event
 InheritedENTER_FRAME : String = "enterFrame"
[static] 定义 enterFrame 事件对象的 type 属性值。
Event
 InheritedFULLSCREEN : String = "fullScreen"
[static] 定义 fullScreen 事件对象的 type 属性值。
Event
 InheritedID3 : String = "id3"
[static] 定义 id3 事件对象的 type 属性值。
Event
 InheritedINIT : String = "init"
[static] 定义 init 事件对象的 type 属性值。
Event
 InheritedMOUSE_LEAVE : String = "mouseLeave"
[static] 定义 mouseLeave 事件对象的 type 属性值。
Event
 InheritedOPEN : String = "open"
[static] 定义 open 事件对象的 type 属性值。
Event
  PRE_DATA_CHANGE : String = "preDataChange"
[static] 定义 preDataChange 事件对象的 type 属性值。
DataChangeEvent
 InheritedREMOVED : String = "removed"
[static] 定义 removed 事件对象的 type 属性值。
Event
 InheritedREMOVED_FROM_STAGE : String = "removedFromStage"
[static] 定义 removedFromStage 事件对象的 type 属性值。
Event
 InheritedRENDER : String = "render"
[static] 定义 render 事件对象的 type 属性值。
Event
 InheritedRESIZE : String = "resize"
[static] 定义 resize 事件对象的 type 属性值。
Event
 InheritedSCROLL : String = "scroll"
[static] 定义 scroll 事件对象的 type 属性值。
Event
 InheritedSELECT : String = "select"
[static] 定义 select 事件对象的 type 属性值。
Event
 InheritedSOUND_COMPLETE : String = "soundComplete"
[static] 定义 soundComplete 事件对象的 type 属性值。
Event
 InheritedTAB_CHILDREN_CHANGE : String = "tabChildrenChange"
[static] 定义 tabChildrenChange 事件对象的 type 属性值。
Event
 InheritedTAB_ENABLED_CHANGE : String = "tabEnabledChange"
[static] 定义 tabEnabledChange 事件对象的 type 属性值。
Event
 InheritedTAB_INDEX_CHANGE : String = "tabIndexChange"
[static] 定义 tabIndexChange 事件对象的 type 属性值。
Event
 InheritedUNLOAD : String = "unload"
[static] 定义 unload 事件对象的 type 属性值。
Event
属性详细信息
changeType属性
changeType:String  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

获取触发事件的更改类型。DataChangeType 类定义此属性的可能值。


实现
    public function get changeType():String

另请参见

endIndex属性 
endIndex:uint  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

获取更改的项目数组中最后一个更改的项目的索引。


实现
    public function get endIndex():uint

另请参见

items属性 
items:Array  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

获取包含更改的项目的数组。


实现
    public function get items():Array
startIndex属性 
startIndex:uint  [read-only]

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

获取更改的项目数组中第一个更改的项目的索引。


实现
    public function get startIndex():uint

另请参见

构造函数详细信息
DataChangeEvent()构造函数
public function DataChangeEvent(eventType:String, changeType:String, items:Array, startIndex:int = -1, endIndex:int = -1)

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

使用指定的参数创建新的 DataChangeEvent 对象。

参数
eventType:String — change 事件的类型。
 
changeType:String — 所做更改的类型。DataChangeType 类定义此参数的可能值。
 
items:Array — 更改的项目的列表。
 
startIndex:int (default = -1) — 所更改的第一个项目的索引。
 
endIndex:int (default = -1) — 所更改的最后一个项目的索引。
方法详细信息
clone()方法
public override function clone():Event

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

创建 DataEvent 对象的副本,并设置每个参数的值以匹配原始参数值。

返回
Event — 其属性值与原始属性值匹配的新 DataChangeEvent 对象。
toString()方法 
public override function toString():String

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.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
Player 版本 : Flash Player 9.0.28.0

定义 dataChange 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
changeType标识所做更改的类型。
currentTarget当前正在使用某个事件侦听器处理事件对象的对象。
endIndex标识最后一个更改的项目的索引。
items列出更改的项目的数组。
startIndex标识第一个更改的项目的索引。
target调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。

另请参见

PRE_DATA_CHANGE常量 
public static const PRE_DATA_CHANGE:String = "preDataChange"

语言版本 : ActionScript 3.0
Player 版本 : Flash Player 9.0.28.0

定义 preDataChange 事件对象的 type 属性值。该事件对象在更改组件数据之前调度。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
changeType标识所要做的更改的类型。
currentTarget当前正在使用某个事件侦听器处理事件对象的对象。
endIndex标识要更改的最后一个项目的索引。
items列出更改的项目的数组。
startIndex标识要更改的第一个项目的索引。
target调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。

另请参见

示例 如何使用示例

此示例演示如何侦听 DataProvider 发出的 DataChangeEvent 广播,并使用其事件来手动填充 DataGrid。

若要运行该示例,请按照下列步骤操作:

  1. 将 DataGrid 和 Button 组件添加到库中。
  2. 将该代码作为 DataChangeEventExample.as 另存到 FLA 文件所在的同一目录中。
  3. 将 FLA 文件中的 Document 类设置为 DataChangeEventExample。
package
{
    import fl.controls.Button;
    import fl.controls.DataGrid;
    import fl.data.DataProvider;
    import fl.events.DataChangeEvent;
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    
    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]);
        }
    }
}




 

评论添加到页面后给我发送电子邮件 | 评论报告

当前页: http://livedocs.adobe.com/flash/9.0_cn/ActionScriptLangRefV3/fl/events/DataChangeEvent.html