fl.events
public class DataGridEvent
继承DataGridEvent Inheritance ListEvent Inheritance Event Inheritance Object

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

DataGridEvent 类定义与 DataGrid 组件关联的事件。这些事件包括下列事件:

查看示例

另请参见

fl.controls.DataGrid
DataGridEventReason



公共 属性
 属性定义方
 Inheritedbubbles : Boolean
[read-only] 指示事件是否为冒泡事件。
Event
 Inheritedcancelable : Boolean
[read-only] 指示是否可以阻止与事件相关联的行为。
Event
 InheritedcolumnIndex : int
[read-only] 获取与此事件关联的项目的列索引。
ListEvent
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
 InheritedcurrentTarget : Object
[read-only] 当前正在使用某个事件侦听器处理 Event 对象的对象。
Event
  dataField : String
获取或设置与列关联的数据中的字段或属性的名称。
DataGridEvent
 InheritedeventPhase : uint
[read-only] 事件流中的当前阶段。
Event
 Inheritedindex : int
[read-only] 获取包含渲染器的单元格的从零开始的索引。
ListEvent
 Inheriteditem : Object
[read-only] 获取属于当前单元格渲染器的数据。
ListEvent
  itemRenderer : Object
[read-only] 获取用于正在进行编辑的项目的项目渲染器,或者正在单击或调整大小的标题渲染器。
DataGridEvent
 Inheritedprototype : Object
[static] 对类或函数对象的原型对象的引用。
Object
  reason : String
[read-only] 获取调度 itemEditEnd 事件的原因。
DataGridEvent
 InheritedrowIndex : Object
[read-only] 获取与此事件关联的项目的行索引。
ListEvent
 Inheritedtarget : Object
[read-only] 事件目标。
Event
 Inheritedtype : String
[read-only] 事件的类型。
Event
公共 方法
 方法定义方
  
DataGridEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, columnIndex:int = -1, rowIndex:int = -1, itemRenderer:Object = null, dataField:String = null, reason:String = null)
使用指定参数创建新的 DataGridEvent 对象。
DataGridEvent
  
创建 DataGridEvent 对象的副本,并设置每个属性的值以匹配原始属性值。
DataGridEvent
 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
  
返回一个字符串,其中包含 DataGridEvent 对象的所有属性。
DataGridEvent
 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
  COLUMN_STRETCH : String = "columnStretch"
[static] DataGridEvent.COLUMN_STRETCH 常量定义 columnStretch 事件对象的 type 属性值。
DataGridEvent
 InheritedCOMPLETE : String = "complete"
[static] 定义 complete 事件对象的 type 属性值。
Event
 InheritedCONNECT : String = "connect"
[static] 定义 connect 事件对象的 type 属性值。
Event
 InheritedDEACTIVATE : String = "deactivate"
[static] 定义 deactivate 事件对象的 type 属性值。
Event
 InheritedENTER_FRAME : String = "enterFrame"
[static] 定义 enterFrame 事件对象的 type 属性值。
Event
 InheritedFULLSCREEN : String = "fullScreen"
[static] 定义 fullScreen 事件对象的 type 属性值。
Event
  HEADER_RELEASE : String = "headerRelease"
[static] DataGridEvent.HEADER_RELEASE 常量定义 headerRelease 事件对象的 type 属性值。
DataGridEvent
 InheritedID3 : String = "id3"
[static] 定义 id3 事件对象的 type 属性值。
Event
 InheritedINIT : String = "init"
[static] 定义 init 事件对象的 type 属性值。
Event
 InheritedITEM_CLICK : String = "itemClick"
[static] 定义 itemClick 事件对象的 type 属性值。
ListEvent
 InheritedITEM_DOUBLE_CLICK : String = "itemDoubleClick"
[static] 定义 itemDoubleClick 事件对象的 type 属性值。
ListEvent
  ITEM_EDIT_BEGIN : String = "itemEditBegin"
[static] DataGridEvent.ITEM_EDIT_BEGIN 常数定义 itemEditBegin 事件对象的 type 属性值。
DataGridEvent
  ITEM_EDIT_BEGINNING : String = "itemEditBeginning"
[static] DataGridEvent.ITEM__EDIT_BEGINNING 常数定义 itemEditBeginning 事件对象的 type 属性值。
DataGridEvent
  ITEM_EDIT_END : String = "itemEditEnd"
[static] The DataGridEvent.ITEM_EDIT_END 常数定义 itemEditEnd 事件对象的 type 属性值。
DataGridEvent
  ITEM_FOCUS_IN : String = "itemFocusIn"
[static] DataGridEvent.ITEM_FOCUS_IN 常量定义 itemFocusIn 事件对象的 type 属性值。
DataGridEvent
  ITEM_FOCUS_OUT : String = "itemFocusOut"
[static] The DataGridEvent.ITEM_FOCUS_OUT 常数定义 itemFocusOut 事件对象的 type 属性值。
DataGridEvent
 InheritedITEM_ROLL_OUT : String = "itemRollOut"
[static] 定义 itemRollOut 事件对象的 type 属性值。
ListEvent
 InheritedITEM_ROLL_OVER : String = "itemRollOver"
[static] 定义 itemRollOut 事件对象的 type 属性值。
ListEvent
 InheritedMOUSE_LEAVE : String = "mouseLeave"
[static] 定义 mouseLeave 事件对象的 type 属性值。
Event
 InheritedOPEN : String = "open"
[static] 定义 open 事件对象的 type 属性值。
Event
 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
属性详细信息
dataField属性
dataField:String  [read-write]

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

获取或设置与列关联的数据中的字段或属性的名称。


实现
    public function get dataField():String
    public function set dataField(value:String):void
itemRenderer属性 
itemRenderer:Object  [read-only]

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

获取用于正在进行编辑的项目的项目渲染器,或者正在单击或调整大小的标题渲染器。


实现
    public function get itemRenderer():Object
reason属性 
reason:String  [read-only]

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

获取调度 itemEditEnd 事件的原因。该属性仅对 DataGridEvent.ITEM_EDIT_END 类型的事件有效。

DataGridEventReason 类中定义的可能值。


实现
    public function get reason():String

另请参见

构造函数详细信息
DataGridEvent()构造函数
public function DataGridEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, columnIndex:int = -1, rowIndex:int = -1, itemRenderer:Object = null, dataField:String = null, reason:String = null)

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

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

参数
type:String — 事件类型;该值指示引发事件的动作。
 
bubbles:Boolean (default = false) — 指示该事件是否可以在显示列表层次结构得到冒泡处理。
 
cancelable:Boolean (default = false) — 指示是否可以阻止与事件相关联的行为。
 
columnIndex:int (default = -1) — 包含渲染器的列的从零开始的索引。
 
rowIndex:int (default = -1) — 包含渲染器的行的从零开始的索引。
 
itemRenderer:Object (default = null) — 用于正在进行编辑的项目的项目渲染器,或者正在单击或拉伸的标题渲染器。
 
dataField:String (default = null) — 与列关联的数据中的字段或属性的名称。
 
reason:String (default = null) — 调度 itemEditEnd 事件的原因。

另请参见

方法详细信息
clone()方法
public override function clone():Event

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

创建 DataGridEvent 对象的副本,并设置每个属性的值以匹配原始属性值。

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

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

返回一个字符串,其中包含 DataGridEvent 对象的所有属性。字符串的格式如下:

[DataGridEvent type=value bubbles=value cancelable=value columnIndex=value rowIndex=value itemRenderer=value dataField=value reason=value]

返回
String — 一个字符串,其中包含 DataGridEvent 对象的所有属性。
常量详细信息
COLUMN_STRETCH常量
public static const COLUMN_STRETCH:String = "columnStretch"

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

DataGridEvent.COLUMN_STRETCH 常量定义 columnStretch 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
columnIndexDataGrid 对象的 columns 数组中标题列的从零开始的索引。
currentTarget当前正在使用某个事件侦听器处理事件对象的对象。
dataField与项目列关联的数据中的字段或属性的名称。
itemRenderer拉伸的列的标题渲染器。
reasonnull
rowIndex数据提供者中项目的索引(从零开始)。
target调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。


示例
如何使用示例

下例创建 DataGrid 组件并侦听该组件的 columnStretch 事件:

import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
import fl.events.DataGridEvent;

var dp:DataProvider = new DataProvider();
dp.addItem({col1:"item 1.A", col2:"item 1.B", col3:"item 1.C"});
dp.addItem({col1:"item 2.A", col2:"item 2.B", col3:"item 2.C"});
dp.addItem({col1:"item 3.A", col2:"item 3.B", col3:"item 3.C"});
dp.addItem({col1:"item 4.A", col2:"item 4.B", col3:"item 4.C"});

var myDataGrid:DataGrid = new DataGrid();
myDataGrid.addColumn("col1");
myDataGrid.addColumn("col2");
myDataGrid.addColumn("col3");
myDataGrid.dataProvider = dp;
myDataGrid.setSize(300, 200);
myDataGrid.move(10, 10);
myDataGrid.addEventListener(DataGridEvent.COLUMN_STRETCH, columnStretchHandler);
addChild(myDataGrid);

function columnStretchHandler(event:DataGridEvent):void {
    var dg:DataGrid = event.target as DataGrid;
    var column:DataGridColumn;
    var columnArray:Array = dg.columns;
    var dgColWidth:String;
    trace("resized column:", event.dataField);
    trace("columnIndex:", event.columnIndex);
    for each (column in columnArray) {
        dgColWidth = Number(column.width / dg.width * 100).toFixed(1);
        trace(column.dataField + ".width:", column.width + " pixels (" + dgColWidth + "%)");
    }
    trace("----------");
}
HEADER_RELEASE常量 
public static const HEADER_RELEASE:String = "headerRelease"

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

DataGridEvent.HEADER_RELEASE 常量定义 headerRelease 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
columnIndexDataGrid 对象的 columns 数组中标题列的从零开始的索引。
currentTarget当前正在使用某个事件侦听器处理事件对象的对象。
dataField与项目列关联的数据中的字段或属性的名称。
itemRenderer单击的标题渲染器。
reasonnull
rowIndex-1
target调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。


示例
如何使用示例

下例创建 DataGrid 组件并侦听该组件的 headerRelease 事件:

import fl.controls.DataGrid;
import fl.controls.dataGridClasses.DataGridColumn;
import fl.data.DataProvider;
import fl.events.DataGridEvent;

var dp:DataProvider = new DataProvider();
dp.addItem({col1:"item 1.A", col2:"item 1.B", col3:"item 1.C"});
dp.addItem({col1:"item 2.A", col2:"item 2.B", col3:"item 2.C"});
dp.addItem({col1:"item 3.A", col2:"item 3.B", col3:"item 3.C"});
dp.addItem({col1:"item 4.A", col2:"item 4.B", col3:"item 4.C"});

var myDataGrid:DataGrid = new DataGrid();
myDataGrid.addColumn("col1");
myDataGrid.addColumn("col2");
myDataGrid.addColumn("col3");
myDataGrid.dataProvider = dp;
myDataGrid.setSize(300, 200);
myDataGrid.move(10, 10);
myDataGrid.addEventListener(DataGridEvent.HEADER_RELEASE, headerReleaseHandler);
addChild(myDataGrid);

function headerReleaseHandler(event:DataGridEvent):void {
    var dg:DataGrid = event.target as DataGrid;
    trace("dataField:", event.dataField, "(columnIndex:" + event.columnIndex + ")");
    trace("sortIndex:", dg.sortIndex);
    trace("sortDescending:", dg.sortDescending);
    trace("----------");
}
ITEM_EDIT_BEGIN常量 
public static const ITEM_EDIT_BEGIN:String = "itemEditBegin"

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

DataGridEvent.ITEM_EDIT_BEGIN 常数定义 itemEditBegin 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
columnIndexDataGrid 对象的 columns 数组中标题列的从零开始的索引。
currentTarget当前正在使用某个事件侦听器处理事件对象的对象。
dataFieldnull
itemRenderer要编辑的项目的项目渲染器。
reasonnull
rowIndex数据提供者中项目的索引(从零开始)。
target调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。

另请参见

ITEM_EDIT_BEGINNING常量 
public static const ITEM_EDIT_BEGINNING:String = "itemEditBeginning"

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

DataGridEvent.ITEM__EDIT_BEGINNING 常数定义 itemEditBeginning 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
columnIndexDataGrid 对象的 columns 数组中标题列的从零开始的索引。
currentTarget当前正在使用某个事件侦听器处理事件对象的对象。
dataField与项目列关联的数据中的字段或属性的名称。
itemRenderer要编辑的项目的项目渲染器。
reasonnull
rowIndex数据提供者中项目的索引(从零开始)。
target调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。

另请参见

ITEM_EDIT_END常量 
public static const ITEM_EDIT_END:String = "itemEditEnd"

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

DataGridEvent.ITEM_EDIT_END 常数定义 itemEditEnd 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
columnIndexDataGrid 对象的 columns 数组中标题列的从零开始的索引。
currentTarget当前正在使用某个事件侦听器处理事件对象的对象。
dataField与项目列关联的数据中的字段或属性的名称。
itemRenderer要编辑的项目的项目渲染器。
reason定义事件原因的常量。该值必须是 DataGridEventReason 类的成员。
rowIndex数据提供者中项目的索引(从零开始)。
target调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。

另请参见

ITEM_FOCUS_IN常量 
public static const ITEM_FOCUS_IN:String = "itemFocusIn"

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

DataGridEvent.ITEM_FOCUS_IN 常量定义 itemFocusIn 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
columnIndexDataGrid 对象的 columns 数组中标题列的从零开始的索引。
currentTarget当前正在使用某个事件侦听器处理事件对象的对象。
dataFieldnull
itemRenderer要编辑的项目的项目渲染器。
reasonnull
rowIndex数据提供者中项目的索引(从零开始)。
target调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。

另请参见

ITEM_FOCUS_OUT常量 
public static const ITEM_FOCUS_OUT:String = "itemFocusOut"

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

DataGridEvent.ITEM_FOCUS_OUT 常数定义 itemFocusOut 事件对象的 type 属性值。

此事件具有以下属性:

属性
bubblesfalse
cancelablefalse;没有要取消的默认行为。
columnIndexDataGrid 对象的 columns 数组中标题列的从零开始的索引。
currentTarget当前正在使用某个事件侦听器处理事件对象的对象。
dataFieldnull
itemRenderer要编辑的项目的项目渲染器。
reasonnull
rowIndex数据提供者中项目的索引(从零开始)。
target调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。

另请参见

示例 如何使用示例

此示例演示如何响应从 DataGrid 调度的事件。

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

  1. 将 DataGrid 组件添加到库中。
  2. 将该代码作为 DataGridEventExample.as 另存到 FLA 文件所在的同一目录中。
  3. 将 FLA 文件中的 Document 类设置为 DataGridEventExample。
package
{
    import fl.controls.DataGrid;
    import fl.data.DataProvider;
    import fl.events.DataGridEvent;
    import fl.events.DataGridEventReason;
    import flash.display.Sprite;
    
    public class DataGridEventExample extends Sprite
    {
        private var dg:DataGrid;
        
        public function DataGridEventExample() {
            createDataGrid();
        }
        private function createDataGrid():void {
            dg = new DataGrid();
            addChild(dg);
            dg.setSize(200,300);
            dg.editable = true;
            
            var dp:DataProvider = new DataProvider();
            var i:uint;
            var totalRows:uint = 42;
            for(i=0; i<totalRows; i++) {
                dp.addItem( {     col1:getRandomNumber(),
                                   col2:getRandomNumber(),
                                col3:getRandomNumber() } );
            }
            dg.dataProvider = dp;
            dg.addEventListener(DataGridEvent.ITEM_EDIT_BEGIN, announceEditBegin);
            dg.addEventListener(DataGridEvent.ITEM_EDIT_END, announceEditEnd);
        }
        private function announceEditBegin(e:DataGridEvent):void {
            trace("Edit Begin on row: " + e.rowIndex + " col: " + e.columnIndex);    
        }
        private function announceEditEnd(e:DataGridEvent):void {
            var reason:String;
            switch(e.reason) {
                case DataGridEventReason.CANCELLED:
                    reason = "User cancelled edit";
                    break;
                case DataGridEventReason.NEW_ROW:
                    reason = "User focused to another row";
                    break;
                case DataGridEventReason.NEW_COLUMN:
                    reason = "User focused to another column";
                    break;
                case DataGridEventReason.OTHER:
                default:
                    reason = "Edit ended for other reason";
                    reason = e.reason;
                    break;                
            }
            trace("Edit End on row: " + e.rowIndex + " col: " + e.columnIndex);
            trace("Reason: " + reason.toString());    
        }
        private function getRandomNumber():uint {
            return Math.round(Math.random()*100);
        }
    }
}




 

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

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