| 套件 | 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 — 變更事件的類型。
| |
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 | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 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 | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 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, 03:47 PM Z
隱藏繼承公用屬性
顯示繼承公用屬性