適用於 Adobe® Flash® Platform 的 ActionScript® 3.0 參考
首頁  |  隱藏套件和類別清單 |  套件  |  類別  |  新增內容  |  索引  |  附錄  |  為什麼顯示英文?
篩選: 從伺服器擷取資料...
從伺服器擷取資料...
flashx.textLayout.events 

FlowElementMouseEvent  - AS3

套件flashx.textLayout.events
類別public class FlowElementMouseEvent
繼承FlowElementMouseEvent Inheritance Event Inheritance Object

語言版本: ActionScript 3.0
執行階段版本: Flash Player 10, AIR 1.5

偵測到滑鼠活動時,連結元素會傳送此事件。Text Layout Framework 包含此特殊版本的滑鼠事件,因為當流排元素內嵌在可編輯的文字流排中,一般都不需要滑鼠事件,而且也因為連結元素不在顯示清單中 (不屬於 DisplayObject)。

您可以將事件偵聽程式增加到連結元素以偵聽此類型的事件。如果您選擇藉由呼叫 Event.preventDefault() 取消事件,則與事件相關聯的預設行為將不會發生。

如果您選擇不要將事件偵聽程式增加到連結元素,或者您的事件偵聽程式函數沒有取消行為,將會再度傳送事件,但這次是由連結元素相關聯的 TextFlow 實體傳送,而不是由連結元素本身傳送。這提供使用附加至 TextFlow 的事件偵聽程式偵聽此事件的第二次機會。

只有在無法編輯文字或在滑鼠活動的同時按下 Ctrl 鍵時,才會傳送 FlowElementMouseEvents。

只有在無法編輯文字或按下 Ctrl 鍵時,才會傳送下列 6 個事件類型:

  • FlowElementMouseEvent.CLICK
  • FlowElementMouseEvent.MOUSE_DOWN
  • FlowElementMouseEvent.MOUSE_UP
  • FlowElementMouseEvent.MOUSE_MOVE
  • FlowElementMouseEvent.ROLL_OVER
  • FlowElementMouseEvent.ROLL_OUT

檢視範例

相關 API 元素



公用屬性
 屬性定義自
 Inheritedbubbles : Boolean
[唯讀] 指出事件是否為反昇事件。
Event
 Inheritedcancelable : Boolean
[唯讀] 指出是否可避免與事件相關聯的行為指令。
Event
 Inheritedconstructor : Object
類別物件的參照或是特定物件實體的建構函數。
Object
 InheritedcurrentTarget : Object
[唯讀] 正主動使用事件偵聽程式處理 Event 物件的物件。
Event
 InheritedeventPhase : uint
[唯讀] 事件流程中的目前階段。
Event
  flowElement : FlowElement
傳送事件的 FlowElement。
FlowElementMouseEvent
  originalEvent : MouseEvent
滑鼠活動產生的原始滑鼠事件。
FlowElementMouseEvent
 Inheritedtarget : Object
[唯讀] 事件目標。
Event
 Inheritedtype : String
[唯讀] 事件類型。
Event
公用方法
 方法定義自
  
FlowElementMouseEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = true, flowElement:FlowElement = null, originalEvent:MouseEvent = null)
建立包含滑鼠活動相關資訊的事件物件。
FlowElementMouseEvent
 Inherited
複製 Event 子類別的實體。
Event
 Inherited
formatToString(className:String, ... arguments):String
公用程式函數,可用來實作自訂 ActionScript 3.0 Event 類別中的 toString() 方法。
Event
 Inherited
指出物件是否有已定義的指定屬性。
Object
 Inherited
檢查是否已經對事件呼叫 preventDefault() 方法。
Event
 Inherited
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。
Object
 Inherited
如果可以取消事件的預設行為指令,則取消該行為指令。
Event
 Inherited
指出指定的屬性是否存在,以及是否可列舉。
Object
 Inherited
為迴圈作業設定動態屬性的可用性。
Object
 Inherited
避免處理事件流程中,目前節點以及任何後續節點中的任何事件偵聽程式。
Event
 Inherited
避免處理接續在事件流程中的目前節點之後,後續節點中的任何事件偵聽程式。
Event
 Inherited
傳回代表此物件的字串,根據地區特定慣例進行格式化。
Object
 Inherited
傳回包含 Event 物件所有屬性的字串。
Event
 Inherited
會傳回指定之物件的基本值。
Object
公用常數
 常數定義自
  CLICK : String = "click"
[靜態] 定義 click 事件物件的 type 屬性值。
FlowElementMouseEvent
  MOUSE_DOWN : String = "mouseDown"
[靜態] 定義 mouseDown 事件物件的 type 屬性值。
FlowElementMouseEvent
  MOUSE_MOVE : String = "mouseMove"
[靜態] 定義 mouseMove 事件物件的 type 屬性值。
FlowElementMouseEvent
  MOUSE_UP : String = "mouseUp"
[靜態] 定義 mouseUp 事件物件的 type 屬性值。
FlowElementMouseEvent
  ROLL_OUT : String = "rollOut"
[靜態] 定義 rollOut 事件物件的 type 屬性值。
FlowElementMouseEvent
  ROLL_OVER : String = "rollOver"
[靜態] 定義 rollOver 事件物件的 type 屬性值。
FlowElementMouseEvent
屬性詳細資訊

flowElement

屬性
flowElement:FlowElement

語言版本: ActionScript 3.0
執行階段版本: Flash Player 10, AIR 1.5

傳送事件的 FlowElement。



實作
    public function get flowElement():FlowElement
    public function set flowElement(value:FlowElement):void

相關 API 元素

originalEvent

屬性 
originalEvent:MouseEvent

語言版本: ActionScript 3.0
執行階段版本: Flash Player 10, AIR 1.5

滑鼠活動產生的原始滑鼠事件。此屬性可以包含下列任何值:

  • MouseEvent.CLICK
  • MouseEvent.MOUSE_DOWN
  • MouseEvent.MOUSE_UP
  • MouseEvent.MOUSE_MOVE
  • MouseEvent.MOUSE_OVER
  • MouseEvent.MOUSE_OUT

在大部分情況下,原始事件符合連結元素傳送的事件。事件符合 clickmouseDownmouseOut,以及 mouseOver 事件。不過,在兩種情況下,是由連結元素將原始事件轉換為相關事件。如果連結元素偵測到 mouseOver 事件,會傳送 rollOver 事件。相同地,如果連結元素偵測到 mouseOut 事件,會傳送 rollOut 事件。通常,事件目標和滑鼠座標與包含連結元素的 TextLine 實體相關。



實作
    public function get originalEvent():MouseEvent
    public function set originalEvent(value:MouseEvent):void

相關 API 元素

建構函式詳細資料

FlowElementMouseEvent

()建構函式
public function FlowElementMouseEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = true, flowElement:FlowElement = null, originalEvent:MouseEvent = null)

語言版本: ActionScript 3.0
執行階段版本: Flash Player 10, AIR 1.5

建立包含滑鼠活動相關資訊的事件物件。Event 物件會當做參數傳遞至事件偵聽程式。如果您計劃手動傳送事件,請使用建構函式。您不需要使用建構函式偵聽由 FlowElement 產生的 FlowElementMouseEvent 物件。

參數
type:String — 事件類型。事件偵聽程式可以透過繼承的 type 屬性來存取此資訊。有 6 種類型:FlowElementMouseEvent.CLICKFlowElementMouseEvent.MOUSE_DOWNFlowElementMouseEvent.MOUSE_MOVEFlowElementMouseEvent.MOUSE_UPFlowElementMouseEvent.ROLL_OVERFlowElementMouseEvent.ROLL_OUT
 
bubbles:Boolean (default = false) — 判斷事件物件是否參與事件流程的反昇階段。FlowElementMouseEvent 物件不反昇。
 
cancelable:Boolean (default = true) — 判斷是否可以取消 Event 物件。事件偵聽程式可透過繼承的 cancelable 屬性來存取此資訊。FlowElementMouseEvent 物件可以取消。您可以在事件偵聽程式中呼叫 preventDefault() 方法,取消與此事件相關聯的預設行為。
 
flowElement:FlowElement (default = null) — 與此事件相關聯的 FlowElement 實體 (目前是 LinkElement)。事件偵聽程式可透過 flowElement 屬性來存取此資訊。
 
originalEvent:MouseEvent (default = null) — 在 flowElement 發生的原始滑鼠事件。事件偵聽程式可透過 originalEvent 屬性來存取此資訊。
常數詳細資訊

CLICK

常數
public static const CLICK:String = "click"

語言版本: ActionScript 3.0
執行階段版本: Flash Player 10, AIR 1.5

定義 type 屬性值 (click 事件物件)。

相關 API 元素

MOUSE_DOWN

常數 
public static const MOUSE_DOWN:String = "mouseDown"

語言版本: ActionScript 3.0
執行階段版本: Flash Player 10, AIR 1.5

定義 mouseDown 事件物件的 type 屬性值。

相關 API 元素

MOUSE_MOVE

常數 
public static const MOUSE_MOVE:String = "mouseMove"

語言版本: ActionScript 3.0
執行階段版本: Flash Player 10, AIR 1.5

定義 mouseMove 事件物件的 type 屬性值。

相關 API 元素

MOUSE_UP

常數 
public static const MOUSE_UP:String = "mouseUp"

語言版本: ActionScript 3.0
執行階段版本: Flash Player 10, AIR 1.5

定義 type 屬性值 (mouseUp 事件物件)。

相關 API 元素

ROLL_OUT

常數 
public static const ROLL_OUT:String = "rollOut"

語言版本: ActionScript 3.0
執行階段版本: Flash Player 10, AIR 1.5

定義 type 屬性值 (rollOut 事件物件)。

相關 API 元素

ROLL_OVER

常數 
public static const ROLL_OVER:String = "rollOver"

語言版本: ActionScript 3.0
執行階段版本: Flash Player 10, AIR 1.5

定義 type 屬性值 (rollOver 事件物件)。

相關 API 元素

FlowElementMouseEvent_example.as

此範例顯示如何偵聽可能在 LinkElement 實體中發生的滑鼠事件。兩個主要步驟是對每個事件類型呼叫 addEventListener(),以及建立事件處理常式函數。

已經為 LinkElement 實體呼叫 addEventListener() 。您可以使用簡單字串,例如,「click」「mouseDown」,但使用靜態常數較安全。此範例使用 MouseEvent 類別中的常數,因為 FlowElementMouseEvent 類別中沒有靜態常數。

此範例只包含一個事件處理常式函數,因為所有事件的代碼都相同。一般而言,回應每個事件類型的代碼會不同,在此情況下,讓每個對 addEventListener() 的呼叫具有個別的事件處理常式函數,是比較好的做法。

package flashx.textLayout.events.examples {
    import flash.display.Sprite;
    import flash.events.MouseEvent;
    import flashx.textLayout.container.ContainerController;
    import flashx.textLayout.elements.TextFlow;
    import flashx.textLayout.elements.ParagraphElement;
    import flashx.textLayout.elements.SpanElement;
    import flashx.textLayout.elements.LinkElement;
    import flashx.textLayout.events.FlowElementMouseEvent;
    import flashx.textLayout.formats.TextLayoutFormat;


    public class FlowElementMouseEvent_example extends Sprite
    {
        private var tf:TextFlow;
        
        public function FlowElementMouseEvent_example()
        {
            // define TextFlow
            tf = new TextFlow();
            
            // define link element
            var linkPar:ParagraphElement = new ParagraphElement();
            var linkEl:LinkElement = new LinkElement();
            linkEl.href = "http://www.adobe.com/go/flashplayer";
            linkEl.target = "_blank"; // when link is clicked, open a new browser window
            var span1:SpanElement = new SpanElement(); // for text associated with link
            span1.text = "Get Flash Player";
            linkEl.addChild(span1);
            
            // define paragraph element for name of events dispatched
            var textPar:ParagraphElement = new ParagraphElement();
            var span2:SpanElement = new SpanElement();
            span2.text ="Three most recent events:";
            
            // add span (text) and link elements to the TextFlow
            linkPar.addChild(linkEl);    // add LinkElement to first paragraph
            textPar.addChild(span2);     // add header text to second paragraph
            tf.addChild(linkPar);        // add paragraph with link to text flow 
            tf.addChild(textPar);        // add paragraph for events to text flow

            
            // add event listeners for all six FlowElementMouseEvent types
            linkEl.addEventListener(FlowElementMouseEvent.CLICK, linkHandler);
            linkEl.addEventListener(FlowElementMouseEvent.MOUSE_DOWN, linkHandler);
            linkEl.addEventListener(FlowElementMouseEvent.MOUSE_MOVE, linkHandler);
            linkEl.addEventListener(FlowElementMouseEvent.MOUSE_UP, linkHandler);
            linkEl.addEventListener(FlowElementMouseEvent.ROLL_OVER, linkHandler);
            linkEl.addEventListener(FlowElementMouseEvent.ROLL_OUT, linkHandler);
            
            // create text container for link and event listing text
            var linkContainer:Sprite = new Sprite();
            linkContainer.x = 10;
            linkContainer.y = 10;
            var linkController:ContainerController = new ContainerController(linkContainer,200,80);
            var linkControllerFormat:TextLayoutFormat = new TextLayoutFormat();
            linkControllerFormat.paddingTop = 3;
            linkController.format = linkControllerFormat;
            tf.flowComposer.addController(linkController);
            
            // Add linkContainer to Display List
            addChild(linkContainer);
            
            tf.flowComposer.updateAllControllers();   
        }
        
        // event handler function        
        private function linkHandler(ev:FlowElementMouseEvent):void {
            var par:ParagraphElement = new ParagraphElement();
            var span:SpanElement = new SpanElement();
            span.text = ev.type;
            par.addChild(span);
            tf.replaceChildren(2,2,par);
            if (tf.numChildren > 5) {
                tf.removeChildAt(5);
            }
            tf.flowComposer.updateAllControllers();  
        }

    }        
}




[ X ]為什麼顯示英文?
「ActionScript 3.0 參考」的內容是以英文顯示

並非所有「ActionScript 3.0 參考」的內容都翻譯為所有語言。當語言元素未翻譯時,就會以英文顯示。例如,ga.controls.HelpBox 類別並沒有翻譯為任何語言。因此在參考的繁體中文版本中,ga.controls.HelpBox 類別就會以英文顯示。