| 套件 | fl.events |
| 類別 | public class ComponentEvent |
| 繼承 | ComponentEvent Event Object |
| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flash CS3 |
| 執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
-
ComponentEvent.BUTTON_DOWN:在按下按鈕之後傳送。 -
ComponentEvent.ENTER:在按下 Enter 鍵之後傳送。 -
ComponentEvent.HIDE:在將組件的 visible 屬性設定為false之後傳送。 -
ComponentEvent.LABEL_CHANGE:在按下 Enter 鍵之後傳送。 -
ComponentEvent.MOVE:在識別組件位置的 x 或 y 屬性發生變更之後傳送。 -
ComponentEvent.RESIZE:在調整組件的大小之後傳送。 -
ComponentEvent.SHOW:在將組件的visible屬性設定為true之後傳送。
公用方法
| 方法 | 定義自 | ||
|---|---|---|---|
建立包含組件事件相關資訊的新 ComponentEvent 物件。 | ComponentEvent | ||
[覆寫]
建立 ComponentEvent 物件的副本,並設定每個參數的值以符合原始物件的參數值。 | ComponentEvent | ||
![]() |
公用程式函數,可用來實作自訂 ActionScript 3.0 Event 類別中的 toString() 方法。 | Event | |
![]() |
指出物件是否有已定義的指定屬性。 | Object | |
![]() |
檢查是否已經對事件呼叫 preventDefault() 方法。 | Event | |
![]() |
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | |
![]() |
如果可以取消事件的預設行為指令,則取消該行為指令。 | Event | |
![]() |
指出指定的屬性是否存在,以及是否可列舉。 | Object | |
![]() |
為迴圈作業設定動態屬性的可用性。 | Object | |
![]() |
避免處理事件流程中,目前節點以及任何後續節點中的任何事件偵聽程式。 | Event | |
![]() |
避免處理接續在事件流程中的目前節點之後,後續節點中的任何事件偵聽程式。 | Event | |
![]() |
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | |
[覆寫]
傳回包含 ComponentEvent 物件之所有屬性的字串。 | ComponentEvent | ||
![]() |
會傳回指定之物件的基本值。 | Object | |
公用常數
| 常數 | 定義自 | ||
|---|---|---|---|
| BUTTON_DOWN : String = "buttonDown" [靜態]
會定義 buttonDown 事件物件的 type 屬性值。 | ComponentEvent | ||
| ENTER : String = "enter" [靜態]
會定義 enter 事件物件的 type 屬性值。 | ComponentEvent | ||
| HIDE : String = "hide" [靜態]
會定義 hide 事件物件的 type 屬性值。 | ComponentEvent | ||
| LABEL_CHANGE : String = "labelChange" [靜態]
會定義 labelChange 事件物件的 type 屬性值。 | ComponentEvent | ||
| MOVE : String = "move" [靜態]
會定義 move 事件物件的 type 屬性值。 | ComponentEvent | ||
| RESIZE : String = "resize" [靜態]
定義 resize 事件物件的 type 屬性值。 | ComponentEvent | ||
| SHOW : String = "show" [靜態]
會定義 show 事件物件的 type 屬性值。 | ComponentEvent | ||
建構函式詳細資料
ComponentEvent | () | 建構函式 |
public function ComponentEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false)| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flash CS3 |
| 執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
建立包含組件事件相關資訊的新 ComponentEvent 物件。 ComponentEvent 物件會當做參數傳遞至事件偵聽程式。
參數type:String — 事件類型。事件偵聽程式可以透過事件物件的 type 屬性存取此資訊。 組件可能會具有下列事件類型:ComponentEvent.BUTTON_DOWN、ComponentEvent.ENTER、ComponentEvent.HIDE、ComponentEvent.LABEL_CHANGE、ComponentEvent.MOVE、ComponentEvent.RESIZE、ComponentEvent.SHOW。
| |
bubbles:Boolean (default = false) — 判斷 ComponentEvent 物件是否會參與事件流程的反昇階段。事件偵聽程式可以透過事件物件的 bubbles 屬性存取此資訊。
| |
cancelable:Boolean (default = false) — 判斷是否可以取消 ComponentEvent 物件。 事件偵聽程式可以透過事件物件的 cancelable 屬性存取此資訊。
|
方法詳細資訊
clone | () | 方法 |
toString | () | 方法 |
常數詳細資訊
BUTTON_DOWN | 常數 |
public static const BUTTON_DOWN:String = "buttonDown"| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flash CS3 |
| 執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會定義 buttonDown 事件物件的 type 屬性值。
這個事件具有下列屬性:
| 屬性 | 值 |
|---|---|
bubbles | false |
cancelable | false;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
ENTER | 常數 |
public static const ENTER:String = "enter"| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flash CS3 |
| 執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會定義 enter 事件物件的 type 屬性值。
這個事件具有下列屬性:
| 屬性 | 值 |
|---|---|
bubbles | false |
cancelable | false;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
HIDE | 常數 |
public static const HIDE:String = "hide"| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flash CS3 |
| 執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會定義 hide 事件物件的 type 屬性值。
這個事件具有下列屬性:
| 屬性 | 值 |
|---|---|
bubbles | false |
cancelable | false;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
相關 API 元素
範例 ( 如何使用本範例 )
下列範例會建立用來切換 List 組件可見性的 Button 組件:
import fl.controls.Button;
import fl.controls.List;
import fl.events.ComponentEvent;
import fl.events.ListEvent;
var toggleButton:Button = new Button();
toggleButton.label = "toggle visibility";
toggleButton.toggle = true;
toggleButton.selected = true;
toggleButton.emphasized = toggleButton.selected;
toggleButton.addEventListener(Event.CHANGE, changeHandler);
toggleButton.width = 150;
toggleButton.move(10, 10);
addChild(toggleButton);
var myList:List = new List();
myList.addItem({label:"Item 1"});
myList.addItem({label:"Item 2"});
myList.addItem({label:"Item 3"});
myList.addItem({label:"Item 4"});
myList.addItem({label:"Item 5"});
myList.move(10, 40);
myList.addEventListener(ComponentEvent.HIDE, hideHandler);
myList.addEventListener(ComponentEvent.SHOW, showHandler);
myList.addEventListener(ListEvent.ITEM_ROLL_OVER, itemRollOverHandler);
myList.addEventListener(ListEvent.ITEM_ROLL_OUT, itemRollOverHandler);
addChild(myList);
function changeHandler(event:Event):void {
toggleButton.emphasized = toggleButton.selected;
myList.visible = toggleButton.selected;
}
function hideHandler(event:ComponentEvent):void {
trace("hiding list");
myList.removeEventListener(ListEvent.ITEM_ROLL_OVER, itemRollOverHandler);
myList.removeEventListener(ListEvent.ITEM_ROLL_OUT, itemRollOverHandler);
}
function showHandler(event:ComponentEvent):void {
trace("showing list");
myList.addEventListener(ListEvent.ITEM_ROLL_OVER, itemRollOverHandler);
myList.addEventListener(ListEvent.ITEM_ROLL_OUT, itemRollOverHandler);
}
function itemRollOverHandler(event:ListEvent):void {
trace(event.type + ":", event.item.label);
}
function itemRollOutHandler(event:ListEvent):void {
trace(event.type + ":", event.item.label);
}
LABEL_CHANGE | 常數 |
public static const LABEL_CHANGE:String = "labelChange"| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flash CS3 |
| 執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會定義 labelChange 事件物件的 type 屬性值。
這個事件具有下列屬性:
| 屬性 | 值 |
|---|---|
bubbles | false |
cancelable | false;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
MOVE | 常數 |
public static const MOVE:String = "move"| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flash CS3 |
| 執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會定義 move 事件物件的 type 屬性值。
這個事件具有下列屬性:
| 屬性 | 值 |
|---|---|
bubbles | false |
cancelable | false;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
範例 ( 如何使用本範例 )
下列範例將根據 Slider 組件的值,在「舞台」上重新定位 UILoader 組件實體:
import fl.controls.Slider;
import fl.containers.UILoader;
import fl.events.ComponentEvent;
import fl.events.SliderEvent;
var myUILoader:UILoader = new UILoader();
myUILoader.source = "http://www.helpexamples.com/flash/images/image3.jpg";
myUILoader.move(10, 20);
myUILoader.addEventListener(ComponentEvent.MOVE, moveHandler);
addChild(myUILoader);
var mySlider:Slider = new Slider();
mySlider.liveDragging = true;
mySlider.minimum = myUILoader.x;
mySlider.maximum = myUILoader.x + 200;
mySlider.snapInterval = 1;
mySlider.tickInterval = 10;
mySlider.move(10, 10);
mySlider.addEventListener(SliderEvent.CHANGE, changeHandler);
addChild(mySlider);
function changeHandler(event:SliderEvent):void {
myUILoader.x = event.value;
}
function moveHandler(event:ComponentEvent):void {
trace("[move] x:" + event.currentTarget.x + ", y:" + event.currentTarget.y);
}
RESIZE | 常數 |
public static const RESIZE:String = "resize"| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flash CS3 |
| 執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
定義 resize 事件物件的 type 屬性值。
這個事件具有下列屬性:
| 屬性 | 值 |
|---|---|
bubbles | false |
cancelable | false;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
範例 ( 如何使用本範例 )
下列範例會將外部影像載入 UILoader 組件實體,並使用
resize 事件和 move() 方法,將它置中放置在「舞台」上:
import fl.containers.UILoader;
import fl.events.ComponentEvent;
var myUILoader:UILoader = new UILoader();
myUILoader.scaleContent = false;
myUILoader.addEventListener(ComponentEvent.RESIZE, resizeHandler);
myUILoader.source = "http://www.helpexamples.com/flash/images/image3.jpg";
addChild(myUILoader);
function resizeHandler(event:ComponentEvent):void {
var myImg:UILoader = event.currentTarget as UILoader;
var newX:uint = (stage.stageWidth - myImg.width) / 2;
var newY:uint = (stage.stageHeight - myImg.height) / 2;
myImg.move(newX, newY);
}
SHOW | 常數 |
public static const SHOW:String = "show"| 語言版本: | ActionScript 3.0 |
| 產品版本: | Flash CS3 |
| 執行階段版本: | Flash Player 9.0.28.0, AIR 1.0 |
會定義 show 事件物件的 type 屬性值。
這個事件具有下列屬性:
| 屬性 | 值 |
|---|---|
bubbles | false |
cancelable | false;沒有要取消的預設行為指令。 |
currentTarget | 正主動使用事件偵聽程式處理 Event 物件的物件。 |
target | 已經傳送該事件的物件。 此目標不一定是偵聽該事件的物件。 您可以使用 currentTarget 屬性,存取目前正在偵聽該事件的物件。 |
相關 API 元素
範例 ( 如何使用本範例 )
下列範例會建立用來切換 List 組件可見性的 Button 組件:
import fl.controls.Button;
import fl.controls.List;
import fl.events.ComponentEvent;
import fl.events.ListEvent;
var toggleButton:Button = new Button();
toggleButton.label = "toggle visibility";
toggleButton.toggle = true;
toggleButton.selected = true;
toggleButton.emphasized = toggleButton.selected;
toggleButton.addEventListener(Event.CHANGE, changeHandler);
toggleButton.width = 150;
toggleButton.move(10, 10);
addChild(toggleButton);
var myList:List = new List();
myList.addItem({label:"Item 1"});
myList.addItem({label:"Item 2"});
myList.addItem({label:"Item 3"});
myList.addItem({label:"Item 4"});
myList.addItem({label:"Item 5"});
myList.move(10, 40);
myList.addEventListener(ComponentEvent.HIDE, hideHandler);
myList.addEventListener(ComponentEvent.SHOW, showHandler);
myList.addEventListener(ListEvent.ITEM_ROLL_OVER, itemRollOverHandler);
myList.addEventListener(ListEvent.ITEM_ROLL_OUT, itemRollOverHandler);
addChild(myList);
function changeHandler(event:Event):void {
toggleButton.emphasized = toggleButton.selected;
myList.visible = toggleButton.selected;
}
function hideHandler(event:ComponentEvent):void {
trace("hiding list");
myList.removeEventListener(ListEvent.ITEM_ROLL_OVER, itemRollOverHandler);
myList.removeEventListener(ListEvent.ITEM_ROLL_OUT, itemRollOverHandler);
}
function showHandler(event:ComponentEvent):void {
trace("showing list");
myList.addEventListener(ListEvent.ITEM_ROLL_OVER, itemRollOverHandler);
myList.addEventListener(ListEvent.ITEM_ROLL_OUT, itemRollOverHandler);
}
function itemRollOverHandler(event:ListEvent):void {
trace(event.type + ":", event.item.label);
}
function itemRollOutHandler(event:ListEvent):void {
trace(event.type + ":", event.item.label);
}
Tue Jun 12 2018, 03:47 PM Z
隱藏繼承公用屬性
顯示繼承公用屬性