包 | fl.events |
类 | public class DataGridEvent |
继承 | DataGridEvent ListEvent Event Object |
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
-
DataGridEvent.COLUMN_STRETCH
:用户在水平方向调整列的大小以后调度。 -
DataGridEvent.HEADER_RELEASE
:用户在列标题上按下并释放鼠标以后调度。 -
DataGridEvent.ITEM_EDIT_BEGIN
:准备编辑项目时调度。 -
DataGridEvent.ITEM_EDIT_BEGINNING
:用户准备好编辑项目以后调度;例如,当鼠标在项目上时,用户释放鼠标按键就会指示这种情况。 -
DataGridEvent.ITEM_EDIT_END
:编辑会话结束时调度。 -
DataGridEvent.ITEM_FOCUS_IN
:在项目获得焦点以后调度。 -
DataGridEvent.ITEM_FOCUS_OUT
:在项目失去焦点以后调度。
相关 API 元素
属性 | 由以下参数定义 | ||
---|---|---|---|
bubbles : Boolean [只读]
表示事件是否为冒泡事件。 | Event | ||
cancelable : Boolean [只读]
表示是否可以阻止与事件相关联的行为。 | Event | ||
columnIndex : int [只读]
获取与此事件关联的项目的列索引。 | ListEvent | ||
constructor : Object
对类对象或给定对象实例的构造函数的引用。 | Object | ||
currentTarget : Object [只读]
当前正在使用某个事件侦听器处理 Event 对象的对象。 | Event | ||
dataField : String
获取或设置与列关联的数据中的字段或属性的名称。 | DataGridEvent | ||
eventPhase : uint [只读]
事件流中的当前阶段。 | Event | ||
index : int [只读]
获取包含渲染器的单元格的从零开始的索引。 | ListEvent | ||
item : Object [只读]
获取属于当前单元格渲染器的数据。 | ListEvent | ||
itemRenderer : Object [只读]
获取用于正在进行编辑的项目的项目渲染器,或者正在单击或调整大小的标题渲染器。 | DataGridEvent | ||
reason : String [只读]
获取调度 itemEditEnd 事件的原因。 | DataGridEvent | ||
rowIndex : Object [只读]
获取与此事件关联的项目的行索引。 | ListEvent | ||
target : Object [只读]
事件目标。 | Event | ||
type : String [只读]
事件的类型。 | 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 | ||
用于在自定义 ActionScript 3.0 Event 类中实现 toString() 方法的实用程序函数。 | Event | ||
表示对象是否已经定义了指定的属性。 | Object | ||
检查是否已对事件调用 preventDefault() 方法。 | Event | ||
表示 Object 类的实例是否在指定为参数的对象的原型链中。 | Object | ||
如果可以取消事件的默认行为,则取消该行为。 | Event | ||
表示指定的属性是否存在、是否可枚举。 | Object | ||
设置循环操作动态属性的可用性。 | Object | ||
防止对事件流中当前节点中和所有后续节点中的事件侦听器进行处理。 | Event | ||
防止对事件流中当前节点的后续节点中的所有事件侦听器进行处理。 | Event | ||
返回此对象的字符串表示形式,其格式设置遵守区域设置特定的约定。 | Object | ||
[覆盖]
返回一个字符串,其中包含 DataGridEvent 对象的所有属性。 | DataGridEvent | ||
返回指定对象的原始值。 | Object |
常量 | 由以下参数定义 | ||
---|---|---|---|
COLUMN_STRETCH : String = "columnStretch" [静态]
DataGridEvent.COLUMN_STRETCH 常量定义 columnStretch 事件对象的 type 属性值。 | DataGridEvent | ||
HEADER_RELEASE : String = "headerRelease" [静态]
DataGridEvent.HEADER_RELEASE 常量定义 headerRelease 事件对象的 type 属性值。 | DataGridEvent | ||
ITEM_EDIT_BEGIN : String = "itemEditBegin" [静态]
DataGridEvent.ITEM_EDIT_BEGIN 常量定义 itemEditBegin 事件对象的 type 属性值。 | DataGridEvent | ||
ITEM_EDIT_BEGINNING : String = "itemEditBeginning" [静态]
DataGridEvent.ITEM__EDIT_BEGINNING 常量定义 itemEditBeginning 事件对象的 type 属性值。 | DataGridEvent | ||
ITEM_EDIT_END : String = "itemEditEnd" [静态]
The DataGridEvent.ITEM_EDIT_END 常量定义 itemEditEnd 事件对象的 type 属性值。 | DataGridEvent | ||
ITEM_FOCUS_IN : String = "itemFocusIn" [静态]
DataGridEvent.ITEM_FOCUS_IN 常量定义 itemFocusIn 事件对象的 type 属性值。 | DataGridEvent | ||
ITEM_FOCUS_OUT : String = "itemFocusOut" [静态]
The DataGridEvent.ITEM_FOCUS_OUT 常量定义 itemFocusOut 事件对象的 type 属性值。 | DataGridEvent |
dataField | 属性 |
itemRenderer | 属性 |
reason | 属性 |
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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.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 事件的原因。
|
相关 API 元素
clone | () | 方法 |
toString | () | 方法 |
override public function toString():String
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
DataGridEvent.COLUMN_STRETCH
常量定义 columnStretch
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
columnIndex | DataGrid 对象的 columns 数组中标题列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
dataField | 与项目列关联的数据中的字段或属性的名称。 |
itemRenderer | 拉伸的列的标题渲染器。 |
reason | null |
rowIndex | 数据提供者中项目的索引(从零开始)。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
示例 ( 如何使用本示例 )
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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
DataGridEvent.HEADER_RELEASE
常量定义 headerRelease
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
columnIndex | DataGrid 对象的 columns 数组中标题列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
dataField | 与项目列关联的数据中的字段或属性的名称。 |
itemRenderer | 单击的标题渲染器。 |
reason | null |
rowIndex | -1 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
示例 ( 如何使用本示例 )
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 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
DataGridEvent.ITEM_EDIT_BEGIN
常量定义 itemEditBegin
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
columnIndex | DataGrid 对象的 columns 数组中标题列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
dataField | null |
itemRenderer | 要编辑的项目的项目渲染器。 |
reason | null |
rowIndex | 数据提供者中项目的索引(从零开始)。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
相关 API 元素
ITEM_EDIT_BEGINNING | 常量 |
public static const ITEM_EDIT_BEGINNING:String = "itemEditBeginning"
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
DataGridEvent.ITEM__EDIT_BEGINNING
常量定义 itemEditBeginning
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
columnIndex | DataGrid 对象的 columns 数组中标题列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
dataField | 与项目列关联的数据中的字段或属性的名称。 |
itemRenderer | 要编辑的项目的项目渲染器。 |
reason | null |
rowIndex | 数据提供者中项目的索引(从零开始)。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
相关 API 元素
ITEM_EDIT_END | 常量 |
public static const ITEM_EDIT_END:String = "itemEditEnd"
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
DataGridEvent.ITEM_EDIT_END
常量定义 itemEditEnd
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
columnIndex | DataGrid 对象的 columns 数组中标题列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
dataField | 与项目列关联的数据中的字段或属性的名称。 |
itemRenderer | 要编辑的项目的项目渲染器。 |
reason | 定义事件原因的常量。该值必须是 DataGridEventReason 类的成员。 |
rowIndex | 数据提供者中项目的索引(从零开始)。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
相关 API 元素
ITEM_FOCUS_IN | 常量 |
public static const ITEM_FOCUS_IN:String = "itemFocusIn"
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
DataGridEvent.ITEM_FOCUS_IN
常量定义 itemFocusIn
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
columnIndex | DataGrid 对象的 columns 数组中标题列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
dataField | null |
itemRenderer | 要编辑的项目的项目渲染器。 |
reason | null |
rowIndex | 数据提供者中项目的索引(从零开始)。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
相关 API 元素
ITEM_FOCUS_OUT | 常量 |
public static const ITEM_FOCUS_OUT:String = "itemFocusOut"
语言版本: | ActionScript 3.0 |
产品版本: | Flash CS3 |
运行时版本: | Flash Player 9.0.28.0, AIR 1.0 |
DataGridEvent.ITEM_FOCUS_OUT
常量定义 itemFocusOut
事件对象的 type
属性值。
此事件具有以下属性:
属性 | 值 |
---|---|
bubbles | false |
cancelable | false ;没有要取消的默认行为。 |
columnIndex | DataGrid 对象的 columns 数组中标题列的从零开始的索引。 |
currentTarget | 当前正在使用某个事件侦听器处理 Event 对象的对象。 |
dataField | null |
itemRenderer | 要编辑的项目的项目渲染器。 |
reason | null |
rowIndex | 数据提供者中项目的索引(从零开始)。 |
target | 调度了事件的对象。target 不一定是侦听该事件的对象。使用 currentTarget 属性可以访问侦听该事件的对象。 |
相关 API 元素
若要运行该示例,请按照下列步骤操作:
- 将 DataGrid 组件添加到库中。
- 将该代码作为 DataGridEventExample.as 另存到 FLA 文件所在的同一目录中。
- 将 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); } } }
Tue Jun 12 2018, 11:04 AM Z