套件 | flashx.textLayout.events |
類別 | public class StatusChangeEvent |
繼承 | StatusChangeEvent Event Object |
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
公用屬性
屬性 | 定義自 | ||
---|---|---|---|
bubbles : Boolean [唯讀]
指出事件是否為反昇事件。 | Event | ||
cancelable : Boolean [唯讀]
指出是否可避免與事件相關聯的行為指令。 | Event | ||
constructor : Object
類別物件的參照或是特定物件實體的建構函數。 | Object | ||
currentTarget : Object [唯讀]
正主動使用事件偵聽程式處理 Event 物件的物件。 | Event | ||
element : FlowElement
狀態已變更的 FlowElement 實體。 | StatusChangeEvent | ||
errorEvent : ErrorEvent
傳送的 ErrorEvent 物件是狀態變更的結果。 | StatusChangeEvent | ||
eventPhase : uint [唯讀]
事件流程中的目前階段。 | Event | ||
status : String
FlowElement 的新狀態。 | StatusChangeEvent | ||
target : Object [唯讀]
事件目標。 | Event | ||
type : String [唯讀]
事件類型。 | Event |
公用方法
方法 | 定義自 | ||
---|---|---|---|
StatusChangeEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, element:FlowElement = null, status:String = null, errorEvent:ErrorEvent = null) 建立包含狀態變更資訊的事件物件。 | StatusChangeEvent | ||
複製 Event 子類別的實體。 | Event | ||
公用程式函數,可用來實作自訂 ActionScript 3.0 Event 類別中的 toString() 方法。 | Event | ||
指出物件是否有已定義的指定屬性。 | Object | ||
檢查是否已經對事件呼叫 preventDefault() 方法。 | Event | ||
指出 Object 類別的實體是否位於指定為參數的物件原型鏈中。 | Object | ||
如果可以取消事件的預設行為指令,則取消該行為指令。 | Event | ||
指出指定的屬性是否存在,以及是否可列舉。 | Object | ||
為迴圈作業設定動態屬性的可用性。 | Object | ||
避免處理事件流程中,目前節點以及任何後續節點中的任何事件偵聽程式。 | Event | ||
避免處理接續在事件流程中的目前節點之後,後續節點中的任何事件偵聽程式。 | Event | ||
傳回代表此物件的字串,根據地區特定慣例進行格式化。 | Object | ||
傳回包含 Event 物件所有屬性的字串。 | Event | ||
會傳回指定之物件的基本值。 | Object |
公用常數
常數 | 定義自 | ||
---|---|---|---|
INLINE_GRAPHIC_STATUS_CHANGE : String = "inlineGraphicStatusChange" [靜態]
定義 inlineGraphicStatusChanged 事件物件的 type 屬性值。 | StatusChangeEvent |
屬性詳細資訊
element | 屬性 |
element:FlowElement
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
狀態已變更的 FlowElement 實體。
實作
public function get element():FlowElement
public function set element(value:FlowElement):void
相關 API 元素
errorEvent | 屬性 |
errorEvent:ErrorEvent
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
傳送的 ErrorEvent 物件是狀態變更的結果。
實作
public function get errorEvent():ErrorEvent
public function set errorEvent(value:ErrorEvent):void
相關 API 元素
status | 屬性 |
status:String
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
FlowElement 的新狀態。此屬性的可能值是由 InlineGraphicElementStatus 類別所定義。InlineGraphicElementStatus 類別中有五個可用的靜態常數:
- ERROR : String = "error".載入參照的圖形期間發生錯誤。
- LOADING : String = "loading". 已在 URL 圖形元素上啟動載入 (但未完成)。
- LOAD_PENDING : String = "loadPending". 圖形元素是尚未載入的 URL。
- READY : String = "ready". 圖形已完全載入且大小適當。
- SIZE_PENDING : String = "sizePending". 寬度/高度為「auto」或百分比的圖形元素已完成載入,但尚未重新撰寫。
實作
public function get status():String
public function set status(value:String):void
相關 API 元素
建構函式詳細資料
StatusChangeEvent | () | 建構函式 |
public function StatusChangeEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, element:FlowElement = null, status:String = null, errorEvent:ErrorEvent = null)
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
建立包含狀態變更資訊的事件物件。
參數type:String — 事件類型。事件偵聽程式可以透過繼承的 type 屬性來存取此資訊。StatusChangeEvent 的類型只有一種:StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGE ;
| |
bubbles:Boolean (default = false ) — 指示事件是否為反昇事件。此事件不反昇。
| |
cancelable:Boolean (default = false ) — 指出是否可避免與事件相關聯的行為指令。無法取消此事件。
| |
element:FlowElement (default = null ) — 狀態已變更的 FlowElement 實體。
| |
status:String (default = null ) — FlowElement 實體的新狀態。
| |
errorEvent:ErrorEvent (default = null ) — ErrorEvent 物件是與狀態相關聯 (若該物件存在)。
|
常數詳細資訊
INLINE_GRAPHIC_STATUS_CHANGE | 常數 |
public static const INLINE_GRAPHIC_STATUS_CHANGE:String = "inlineGraphicStatusChange"
語言版本: | ActionScript 3.0 |
執行階段版本: | Flash Player 10, AIR 1.5 |
定義 inlineGraphicStatusChanged
事件物件的 type
屬性值。
範例 如何使用本範例
StatusChangeEvent_example.as
這個範例會顯示如何建立一個事件處理常式,用於偵聽成功載入的 InlineGraphicElement 物件。兩個主要步驟是在文字流排上呼叫
addEventListener()
方法,以及建立事件處理常式函數。
在 TextFlow 實體上呼叫 addEventListener()
方法。 您可以使用這個簡易的字串 "inlineGraphicsStatusChanged"
,不過最好是使用靜態常數 StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGE
此範例中的事件處理常式函數命名為 statusChangeHandler()
。事件處理常式會先檢查以暸解圖形是否已載入。 如果圖形已載入,事件處理常式會調整圖形的高度,以便配合文字。最後,事件處理常式會在文字方向上呼叫 updateAllcontrollers()
,以重新編排以及顯示文字和內嵌圖形。
package flashx.textLayout.events.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.elements.InlineGraphicElement; import flashx.textLayout.elements.InlineGraphicElementStatus; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.events.StatusChangeEvent; public class StatusChangeEvent_example extends Sprite { private var _textFlow:TextFlow; private var _inlineGraphic:InlineGraphicElement; private var graphicHeight:Number; public function StatusChangeEvent_example() { _textFlow = new TextFlow(); _textFlow.fontSize = 48; graphicHeight = 48 var p:ParagraphElement = new ParagraphElement(); _textFlow.addChild(p); var span:SpanElement = new SpanElement(); span.text = "Text "; p.addChild(span); _inlineGraphic = new InlineGraphicElement(); _inlineGraphic.source = "../../images/textLayout_TextFlow.gif"; p.addChild(_inlineGraphic); var span2:SpanElement = new SpanElement(); span2.text = " Flow"; p.addChild(span2); _textFlow.addEventListener(StatusChangeEvent.INLINE_GRAPHIC_STATUS_CHANGE,statusChangeHandler); _textFlow.flowComposer.addController(new ContainerController(this,400,200)); _textFlow.flowComposer.updateAllControllers(); } private function statusChangeHandler(e:StatusChangeEvent):void { // if the graphic has loaded update the display // set the loaded graphic's height to match text height if (e.status == InlineGraphicElementStatus.READY || e.status == InlineGraphicElementStatus.SIZE_PENDING) { _inlineGraphic.height = graphicHeight; _textFlow.flowComposer.updateAllControllers(); } } } }
Tue Jun 12 2018, 03:47 PM Z