套件 | 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