window.runtime プロパティwindow.runtime.flash.events.EventDispatcher
継承EventDispatcher Inheritance Object
ランタイムバージョン:  1.0

EventDispatcher クラスは、イベントを送出するすべてのランタイムクラスの基本クラスです。

イベントを送出するオブジェクトの addEventListener() メソッドを呼び出すことで、ランタイムイベントを処理する関数を登録できます。



プロパティ
 プロパティ定義元
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。
Object
 Inheritedprototype : Object
[静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。
Object
パブリックメソッド
 メソッド定義元
  
EventDispatcher クラスのインスタンスを集約します。
EventDispatcher
  
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。
EventDispatcher
  
イベントをイベントフローに送出します。
EventDispatcher
  
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 Inherited
hasOwnProperty(name:String):Boolean
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
isPrototypeOf(theClass:Object):Boolean
Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
propertyIsEnumerable(name:String):Boolean
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
  
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
 Inherited
setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
toString():String
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
valueOf():Object
指定されたオブジェクトのプリミティブな値を返します。
Object
  
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
イベント
 イベント 概要 定義元
  [ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
  [ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失い、非アクティブになるときに送出されます。EventDispatcher
コンストラクタの詳細
EventDispatcher()コンストラクタ
function EventDispatcher(target:IEventDispatcher = null)
ランタイムバージョン:  1.0

EventDispatcher クラスのインスタンスを集約します。

EventDispatcher クラスは通常、SWF コンテンツで使用される ActionScript 3.0 コードで基本クラスとして使用されます。したがって、JavaScript 開発者はこのコンストラクタ関数を使用する必要はありません。

パラメータ
target:IEventDispatcher (default = null) — EventDispatcher オブジェクトに送出されるイベントのターゲットオブジェクトです。 ターゲットオブジェクトは、ActionScript 3.0 表示リストアーキテクチャを使用する、SWF コンテンツ内の表示オブジェクトにのみ関連します。
メソッドの詳細
addEventListener()メソッド
function addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
ランタイムバージョン:  1.0

リスナーがイベントの通知を受け取るように、イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録します。

AIR ランタイムの JavaScript コードは、このメソッドを使用して AIR API によって定義されたイベント用のイベントリスナーを登録します。他の JavaScript イベント、例えば、onload イベント(DOM body オブジェクトのイベント)などの場合、ブラウザ内で実行されるコンテンツに対して行うように標準イベント処理テクニックを使用できます。

イベントリスナーが正常に登録された後に、addEventListener() をさらに呼び出して優先度を変更することはできません。リスナーの優先度を変更するには、最初に removeListener() を呼び出す必要があります。その後、同じリスナーを新しい優先度レベルで再度登録できます。

リスナーが登録された後に、addEventListener()type または useCapture に別の値を設定)を再度呼び出すと、別のリスナー登録が作成されることに注意してください。

イベントリスナーが不要になった場合は、removeEventListener() を呼び出して、イベントリスナーを削除します。削除しない場合、メモリの問題が発生する可能性があります。ガベージコレクターは参照を有するオブジェクトを削除しないため、登録されているイベントリスナーに関係したオブジェクトはメモリから自動的に除去されません。

EventDispatcher インスタンスをコピーしても、それに関連付けられているイベントリスナーはコピーされません。新しく作成したノードにイベントリスナーが必要な場合は、ノードを作成した後に、リスナーを関連付ける必要があります。ただし、EventDispatcher インスタンスを移動した場合は、関連付けられているイベントリスナーも一緒に移動されます。

パラメータ

type:String — イベントのタイプです。
 
listener:Function — イベントを処理するリスナー関数です。この関数は Event オブジェクトをその唯一のパラメータとして受け入れる必要があり、何も返してはいけません

関数の名前は任意に付けられます。

 
useCapture:Boolean (default = false)このパラメータは、SWF コンテンツで使用される ActionScript 3.0 の表示リストアーキテクチャの表示オブジェクトに適用されます。
 
priority:int (default = 0) — イベントリスナーの優先度レベルです。優先度は、符号付き 32 ビット整数で指定します。数値が大きくなるほど優先度が高くなります。優先度が n のすべてのリスナーは、優先度が n-1 のリスナーよりも前に処理されます。複数のリスナーに対して同じ優先度が設定されている場合、それらは追加された順番に処理されます。デフォルトの優先度は 0 です。
 
useWeakReference:Boolean (default = false) — リスナーへの参照が強参照と弱参照のいずれであるかを判断します。デフォルトである強参照の場合は、リスナーのガベージコレクションが回避されます。弱参照では回避されません。

クラスレベルメンバー関数はガベージコレクションの対象外であるため、クラスレベルメンバー関数の useWeakReference は、ガベージコレクションの制限とは無関係に true に設定できます。ネストされた内部の関数であるリスナーに対して useWeakReferencetrue に設定すると、その関数はガベージコレクションされ、永続的ではなくなります。inner 関数に対する参照を作成(別の変数に保存)した場合、その関数はガベージコレクションされず、永続化された状態のままになります。


例外
ArgumentError — 指定された listener は関数ではありません。
dispatchEvent()メソッド 
function dispatchEvent(event:Event):Boolean
ランタイムバージョン:  1.0

イベントをイベントフローに送出します。イベントターゲットは EventDispatcher オブジェクトです。これに対して dispatchEvent() メソッドが呼び出されます。

パラメータ

event:Event — イベントフローに送出されるイベントオブジェクトです。イベントが再度送出されると、イベントのクローンが自動的に作成されます。イベントが送出された後にそのイベントの target プロパティは変更できないため、再送出処理のためにはイベントの新しいコピーを作成する必要があります。

戻り値
Boolean — 値が true の場合、イベントは正常に送出されました。値が false の場合、イベントの送出に失敗したか、イベントで preventDefault() が呼び出されたことを示しています。

例外
Error — イベント送出再帰が上限に達しました。
hasEventListener()メソッド 
function hasEventListener(type:String):Boolean
ランタイムバージョン:  1.0

EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。これにより、EventDispatcher オブジェクトがイベントタイプの処理をイベントフロー階層のどこで変更したかを判断できます。特定のイベントタイプが実際にイベントリスナーをトリガするかどうかを判別するには、willTrigger() を使用します。

hasEventListener()willTrigger() の違いは、hasEventListener() では自身が属するオブジェクトのみが検証され、willTrigger() では type パラメータで指定されたイベントのイベントフロー全体が検証されることです。 イベントフローは、SWF コンテンツで使用される ActionScript 3.0 表示リストに適用されます。

hasEventListener() が LoaderInfo オブジェクトから呼び出された場合は、呼び出し側がアクセスできるリスナーのみ考慮されます。

パラメータ

type:String — イベントのタイプです。

戻り値
Boolean — 指定したタイプのリスナーが登録されている場合は true、それ以外の場合は false です。

関連項目

removeEventListener()メソッド 
function removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
ランタイムバージョン:  1.0

EventDispatcher オブジェクトからリスナーを削除します。対応するリスナーが EventDispatcher オブジェクトに登録されていない場合は、このメソッドを呼び出しても効果はありません。

パラメータ

type:String — イベントのタイプです。
 
listener:Function — 削除するリスナーオブジェクトです。
 
useCapture:Boolean (default = false)このパラメータは、SWF コンテンツで使用される ActionScript 3.0 の表示リストアーキテクチャの表示オブジェクトに適用されます。

willTrigger()メソッド 
function willTrigger(type:String):Boolean
ランタイムバージョン:  1.0

指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。指定されたタイプのイベントがこの EventDispatcher オブジェクトまたはその子孫に送出されたときに、イベントリスナーがイベントフローの任意の段階でトリガされる場合、このメソッドは true を返します。

hasEventListener()willTrigger() メソッドの違いは、hasEventListener() では自身が属するオブジェクトのみが検証され、willTrigger() メソッドでは type パラメータで指定されたイベントのイベントフロー全体が検証されることです。 イベントフローは、SWF コンテンツで使用される ActionScript 3.0 表示リストに適用されます。

willTrigger() が LoaderInfo オブジェクトから呼び出された場合は、呼び出し側がアクセスできるリスナーのみが考慮されます。

パラメータ

type:String — イベントのタイプです。

戻り値
Boolean — 指定したタイプのリスナーがトリガされた場合は true、それ以外の場合は false です。
イベントの詳細
activate イベント
イベントオブジェクトの型: flash.events.Event
プロパティ Event.type = flash.events.Event.ACTIVATE
ランタイムバージョン:  1.0

[ブロードキャストイベント] AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。このイベントはブロードキャストイベントです。したがって、このイベントに対して登録されているリスナーを持つすべての EventDispatcher オブジェクトがこのイベントを送出します。

ACTIVATE 定数は、type プロパティ(activate イベントオブジェクト)の値を定義します。

注意:このイベントには「キャプチャ段階」と「バブリング段階」はありません。したがって、ターゲットが表示リストにあるかないかに関わらず、潜在的なターゲットにはイベントリスナーを直接追加する必要があります。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
targetactivate イベントに対するリスナーが登録された任意の DisplayObject インスタンスです。
deactivate イベント  
イベントオブジェクトの型: flash.events.Event
プロパティ Event.type = flash.events.Event.DEACTIVATE
ランタイムバージョン:  1.0

[ブロードキャストイベント] AIR アプリケーションがオペレーティングシステムのフォーカスを失い、非アクティブになるときに送出されます。このイベントはブロードキャストイベントです。したがって、このイベントに対して登録されているリスナーを持つすべての EventDispatcher オブジェクトがこのイベントを送出します。

Event.DEACTIVATE 定数は、type プロパティ(deactivate イベントオブジェクト)の値を定義します。

注意:このイベントには「キャプチャ段階」と「バブリング段階」はありません。したがって、ターゲットが表示リストにあるかないかに関わらず、潜在的なターゲットにはイベントリスナーを直接追加する必要があります。

このイベントには、次のプロパティがあります。

プロパティ
bubblesfalse
cancelablefalse は、キャンセルするデフォルトの動作がないことを示します。
currentTargetイベントリスナーで Event オブジェクトをアクティブに処理しているオブジェクトです。
targetdeactivate イベントに対するリスナーが登録された任意の DisplayObject インスタンスです。