パッケージ | flashx.textLayout.events |
クラス | public class SelectionEvent |
継承 | SelectionEvent Event Object |
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
プロパティ | 定義元 | ||
---|---|---|---|
bubbles : Boolean [読み取り専用]
イベントがバブリングイベントかどうかを示します。 | Event | ||
cancelable : Boolean [読み取り専用]
イベントに関連付けられた動作を回避できるかどうかを示します。 | Event | ||
constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。 | Object | ||
currentTarget : Object [読み取り専用]
イベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。 | Event | ||
eventPhase : uint [読み取り専用]
イベントフローの現在の段階です。 | Event | ||
selectionState : SelectionState
この SelectionEvent に関連付けられている選択範囲を示す SelectionState タイプのオブジェクトです。 | SelectionEvent | ||
target : Object [読み取り専用]
イベントターゲットです。 | Event | ||
type : String [読み取り専用]
イベントのタイプです。 | Event |
メソッド | 定義元 | ||
---|---|---|---|
SelectionEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, selectionState:SelectionState = null)
フロー操作情報を含むイベントオブジェクトを作成します。 | SelectionEvent | ||
Event サブクラスのインスタンスを複製します。 | Event | ||
カスタム ActionScript 3.0 Event クラスに toString() メソッドを実装するためのユーティリティ関数です。 | Event | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
イベントで preventDefault() メソッドが呼び出されたかどうかを確認します。 | Event | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
イベントのデフォルト動作をキャンセルできる場合に、その動作をキャンセルします。 | Event | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
イベントフローの現在のノードおよび後続するノードで、イベントリスナーが処理されないようにします。 | Event | ||
イベントフローの現在のノードに後続するノードで、イベントリスナーが処理されないようにします。 | Event | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
Event オブジェクトのすべてのプロパティを含むストリングを返します。 | Event | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object |
定数 | 定義元 | ||
---|---|---|---|
SELECTION_CHANGE : String = "selectionChange" [静的]
SelectionEvent.SELECTION_CHANGE 定数により、選択イベントのイベントオブジェクトの type プロパティ値が定義されます。 | SelectionEvent |
selectionState | プロパティ |
selectionState:SelectionState
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
この SelectionEvent に関連付けられている選択範囲を示す SelectionState タイプのオブジェクトです。
このプロパティと ElementRange クラスを使用して、選択されたテキスト範囲を示す ElementRange インスタンスを作成できます。次のコード行を使用して、選択したテキスト範囲を示す ElementRange クラスのインスタンスを作成できます(ev
変数はイベントオブジェクトを示し、条件演算子を使用して selectionState
プロパティに対して null
値がガードされます)。
// Find selected element range var range:ElementRange = ev.selectionState ? ElementRange.createElementRange(ev.selectionState.textFlow, ev.selectionState.absoluteStart, ev.selectionState.absoluteEnd) : null;
実装
public function get selectionState():SelectionState
public function set selectionState(value:SelectionState):void
関連する API エレメント
SelectionEvent | () | コンストラクター |
public function SelectionEvent(type:String, bubbles:Boolean = false, cancelable:Boolean = false, selectionState:SelectionState = null)
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
フロー操作情報を含むイベントオブジェクトを作成します。
パラメーターtype:String — イベントのタイプです。イベントリスナーは、継承された type プロパティを通じてこの情報にアクセスできます。SelectionEvent のタイプはSelectionEvent.SELECTION_CHANGE のみです。
| |
bubbles:Boolean (default = false ) — イベントがバブリングイベントかどうかを示します。このイベントではバブリングを実行できません。
| |
cancelable:Boolean (default = false ) — イベントに関連付けられた動作を回避できるかどうかを示します。
| |
selectionState:SelectionState (default = null ) — 選択されたテキスト範囲を示す ElementRange タイプのオブジェクトです。
|
SELECTION_CHANGE | 定数 |
public static const SELECTION_CHANGE:String = "selectionChange"
言語バージョン: | ActionScript 3.0 |
ランタイムバージョン: | Flash Player 10, AIR 1.5 |
SelectionEvent.SELECTION_CHANGE 定数により、選択イベントのイベントオブジェクトの type プロパティ値が定義されます。
次の例は、テキストフロー内のテキストの選択範囲の変更を監視する方法を示しています。主要な 2 つの手順は、テキストフローでの addEventListener()
メソッドの呼び出しと、イベントハンドラー関数の作成です。
TextFlow インスタンスで addEventListener()
が呼び出されます。単純なストリング "selectionChange"
を使用できますが、静的定数 SelectionEvent.SELECTION_CHANGE
を使用したほうが安全です。
この例では、イベントハンドラー関数に selectionHandler()
という名前が付けられています。selectionHandler()
メソッドは trace()
関数を使用して、テキスト範囲の開始および終了ポイントを示すトレースステートメントを生成します。この情報には、イベントオブジェクトの selectedElementRange
プロパティを通じてアクセスできます。
package flashx.textLayout.events.examples { import flash.display.Sprite; import flashx.textLayout.container.ContainerController; import flashx.textLayout.edit.ElementRange; import flashx.textLayout.elements.TextFlow; import flashx.textLayout.elements.ParagraphElement; import flashx.textLayout.elements.SpanElement; import flashx.textLayout.edit.SelectionManager; import flashx.textLayout.edit.SelectionState; import flashx.textLayout.events.SelectionEvent; public class SelectionEvent_example extends Sprite { private var tf:TextFlow; private var sm:SelectionManager; public function SelectionEvent_example() { //define TextFlow and manager objects tf = new TextFlow(); sm = new SelectionManager(); tf.interactionManager = sm; //define elements to contain text var p:ParagraphElement = new ParagraphElement(); var s:SpanElement = new SpanElement(); s.text ="This is sample text for the SelectionEvent example."; //add the elements to the TextFlow p.addChild(s); // add span as child of paragraph tf.addChild(p); // add paragraph to text flow //compose TextFlow to display tf.flowComposer.addController(new ContainerController(this,600,400)); tf.flowComposer.updateAllControllers(); //add event handler to listen for SelectionEvent tf.addEventListener(SelectionEvent.SELECTION_CHANGE, selectionHandler); } private function selectionHandler(ev:SelectionEvent):void{ trace("Selection event detected."); // Find selected element range var range:ElementRange = ev.selectionState ? ElementRange.createElementRange(ev.selectionState.textFlow, ev.selectionState.absoluteStart, ev.selectionState.absoluteEnd) : null; trace("Starting index of selection range: " + range.absoluteStart); trace("Ending index of selection range: " + range.absoluteEnd); } } }
Tue Jun 12 2018, 10:34 AM Z