パッケージ | mx.effects |
クラス | public class Effect |
継承 | Effect EventDispatcher Object |
実装 | IEffect |
サブクラス | AddAction, AddChildAction, AddItemAction, Animate, CallAction, CompositeEffect, MaskEffect, RemoveAction, RemoveChildAction, RemoveItemAction, SetAction, SetPropertyAction, SetStyleAction, SoundEffect, TweenEffect, UnconstrainItemAction |
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
アプリケーションで Effect クラス自体のインスタンスを作成することはありません。 その代わり、Fade、WipeLeft などのいずれかのサブクラスのインスタンスを作成します。
MXML シンタックスMXML シンタックスを隠すThe Effect class defines the following properties, which all of its subclasses inherit:
<mx:tagname Properties customFilter="" duration="500" filter="" hideFocusRing="false" perElementOffset="0" repeatCount="1" repeatDelay="0" startDelay="0" suspendBackgroundProcessing="false|true" target="effect target" targets="array of effect targets" Events effectEnd="No default" efectStart="No default" />
さらに例を参照
About applying Spark effects
About applying MX effects
About factory and instance classes
Applying effects
Using the Effect.target and Effect.targets properties
Applying effects by using data binding
Playing an effect backward
Ending an effect
Creating effects in ActionScript
Working with effects
Delaying effect start
Repeating effects
Handling effect events
Creating composite effects
Using embedded fonts with effects
Suspending background processing
Disabling container layout for effects
Handling Spark effect events
Using Spark easing classes
Improving effect performance
About creating a custom effect
Example: Defining a simple effect
Example: Passing parameters to effects
Writing an effect for a transition
Defining a custom effect trigger for MX effects
関連する API エレメント
プロパティ | 定義元 | ||
---|---|---|---|
className : String [読み取り専用]
このエフェクトクラスの名前です。たとえば、"Fade" などがあります。 | Effect | ||
constructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。 | Object | ||
customFilter : mx.effects:EffectTargetFilter
エフェクトを再生するターゲットを特定するために、エフェクトによって使用されるタイプ EffectTargetFilter のカスタムフィルターオブジェクトを指定します。 | Effect | ||
duration : Number
エフェクトの継続時間を表します(ミリ秒単位)。 | Effect | ||
effectTargetHost : mx.effects:IEffectTargetHost
データエフェクトのターゲットリストコントロールにアクセスできるプロパティです。 | Effect | ||
filter : String
エフェクトのターゲットをフィルタリングするアルゴリズムを指定します。 | Effect | ||
hideFocusRing : Boolean
エフェクトの開始時にエフェクトがフォーカス枠を非表示にするかどうかを指定します。 | Effect | ||
instanceClass : Class
このエフェクトクラスのエフェクトインスタンスクラスを指定する Class 型のオブジェクトを表します。 | Effect | ||
isPlaying : Boolean [読み取り専用]
エフェクトのインスタンスのいずれかが現在再生中の場合に true、そうでない場合に false となる読み取り専用フラグです。 | Effect | ||
perElementOffset : Number
エフェクトの最初のターゲットの後に発生する、エフェクトターゲットの追加遅延(ミリ秒)です。 | Effect | ||
playheadTime : Number
エフェクトの現在の時間位置です。 | Effect | ||
relevantProperties : Array
フィルタリング実行時に使用するプロパティ名の配列を表します。 | Effect | ||
relevantStyles : Array
フィルタリング実行時に使用するスタイル名の配列を表します。 | Effect | ||
repeatCount : int = 1
エフェクトを繰り返す回数を表します。 | Effect | ||
repeatDelay : int = 0
エフェクトを繰り返す前の待機時間を表します(ミリ秒単位)。 | Effect | ||
startDelay : int = 0
エフェクトを開始する前の待機時間を表します(ミリ秒単位)。 | Effect | ||
suspendBackgroundProcessing : Boolean = false
true の場合、エフェクトの再生中にすべてのバックグラウンド処理をブロックします。 | Effect | ||
target : Object
このエフェクトが適用されるオブジェクトを表します。 | Effect | ||
targets : Array
エフェクトのターゲットであるオブジェクトの配列を表します。 | Effect | ||
triggerEvent : Event
エフェクトがトリガーされたときに EffectManager によってこの Effect に渡される Event オブジェクトです。EffectManager によってエフェクトが再生されていない場合は null です。 | Effect |
プロパティ | 定義元 | ||
---|---|---|---|
applyTransitionEndProperties : Boolean
このフラグは、エフェクトがトランジションで実行された場合に、エフェクト自体が設定した値をそのまま使用するのではなく、その終了状態に応じてプロパティ値を自動的に適用するかどうかを制御します。 | Effect | ||
endValuesCaptured : Boolean = false
エフェクトの終了値が既に決定されている場合は true を含むフラグ、エフェクトの実行時にエフェクトターゲットの現在のプロパティから終了値を取得する必要がある場合は false を含むフラグです。 | Effect |
メソッド | 定義元 | ||
---|---|---|---|
コンストラクターです。 | Effect | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。 | EventDispatcher | ||
エフェクトのターゲットにおいて関連するプロパティの現在値をキャプチャし、終了値として保存します。 | Effect | ||
ターゲットの追加セットの関連するプロパティの現在値をキャプチャします。この機能は、データ変更エフェクトを実行したときに Flex によって使用されます。
| Effect | ||
エフェクトのターゲットにおいて関連するプロパティの現在値をキャプチャします。 | Effect | ||
1 つのエフェクトインスタンスを作成し、それを初期化します。 | Effect | ||
ターゲットオブジェクトの配列を取得し、各ターゲットで createInstance() メソッドを呼び出します。 | Effect | ||
インスタンスからイベントリスナーを削除し、インスタンスのリストからインスタンスを削除します。 | Effect | ||
イベントをイベントフローに送出します。 | EventDispatcher | ||
現在再生中のエフェクトをすべて中断し、直ちにエフェクトの終わりにジャンプします。 | Effect | ||
ストリングの配列を返します。各ストリングは、このエフェクトによって変更されるプロパティの名前です。 | Effect | ||
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。 | EventDispatcher | ||
オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | ||
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | ||
resume() メソッドを呼び出すまで、エフェクトを一時停止します。 | Effect | ||
エフェクトの再生を開始します。 | Effect | ||
指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | ||
EventDispatcher オブジェクトからリスナーを削除します。 | EventDispatcher | ||
pause() メソッドを呼び出し、エフェクトを一時停止した後、再開させます。 | Effect | ||
エフェクトが現在再生中の場合に、エフェクトの現在位置から開始して、逆順でエフェクトを再生します。 | Effect | ||
ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | ||
エフェクトターゲットを現在の状態にしたまま、エフェクトを停止します。 | Effect | ||
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのストリング表現を返します。 | Object | ||
指定されたオブジェクトのプリミティブな値を返します。 | Object | ||
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。 | EventDispatcher |
メソッド | 定義元 | ||
---|---|---|---|
エフェクトインフラストラクチャによって内部的に使用されます。 | Effect | ||
エフェクトインスタンスの再生終了時に呼び出されます。 | Effect | ||
このメソッドは、エフェクトインスタンスの再生開始時に呼び出されます。 | Effect | ||
エフェクトインスタンスが stop() メソッドの呼び出しによって停止されると呼び出されます。 | Effect | ||
エフェクトインスタンスをフィルタリングするために必要なロジックを決定します。 | Effect | ||
ターゲットからプロパティの値を取得するために captureStartValues() メソッドによって呼び出されます。 | Effect | ||
エフェクトインスタンスにエフェクトのプロパティをコピーします。 | Effect |
イベント | 概要 | 定義元 | ||
---|---|---|---|---|
[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。 | EventDispatcher | |||
[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。 | EventDispatcher | |||
エフェクトのインスタンスの 1 つが再生を停止したとき(インスタンスの再生完了時、またはエフェクトが end() メソッドの呼び出しにより中断されたとき)に送出されます。 | Effect | |||
エフェクトの再生開始時に送出されます。 | Effect | |||
エフェクトが停止されると送出されます。これが発生するのは、stop() メソッドの呼び出しによってエフェクトが中断された場合のみです。 | Effect |
applyTransitionEndProperties | プロパティ |
protected var applyTransitionEndProperties:Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
このフラグは、エフェクトがトランジションで実行された場合に、エフェクト自体が設定した値をそのまま使用するのではなく、その終了状態に応じてプロパティ値を自動的に適用するかどうかを制御します。
デフォルト値: true。
className | プロパティ |
customFilter | プロパティ |
customFilter:mx.effects:EffectTargetFilter
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトを再生するターゲットを特定するために、エフェクトによって使用されるタイプ EffectTargetFilter のカスタムフィルターオブジェクトを指定します。
ターゲットへのフィルタリングは、エフェクトの再生前に captureStartValues()
を呼び出した場合にのみ実行されます。 エフェクトがトランジションに含まれる場合に、captureStartValues()
メソッドが自動的に Flex から呼び出されます。
単純なフィルタリングには、filter
プロパティを使用します。 customFilter
プロパティが null 以外の場合、filter
プロパティは無視されます。
実装
public function get customFilter():mx.effects:EffectTargetFilter
public function set customFilter(value:mx.effects:EffectTargetFilter):void
duration | プロパティ |
duration:Number
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトの継続時間を表します(ミリ秒単位)。
Parallel エフェクトまたは Sequence エフェクトでは、duration
プロパティによって各エフェクトの継続時間が設定されます。 たとえば、Sequence エフェクトの duration
プロパティが 3000 に設定されている場合、Sequence の各エフェクトの再生時間は 3000 ミリ秒となります。
繰り返されるエフェクトの場合、duration
プロパティによって、エフェクトの 1 つあたりのインスタンスの継続時間が指定されます。 したがって、エフェクトで duration
プロパティが 2000 に設定され、repeatCount
プロパティが 3 に設定されている場合、エフェクトの総再生時間は 6000 ミリ秒(6 秒)となります。
実装
public function get duration():Number
public function set duration(value:Number):void
effectTargetHost | プロパティ |
effectTargetHost:mx.effects:IEffectTargetHost
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
データエフェクトのターゲットリストコントロールにアクセスできるプロパティです。 このプロパティにより、エフェクトクラスのインスタンスは、エフェクトが再生されているリストコントロールと通信できます。
実装
public function get effectTargetHost():mx.effects:IEffectTargetHost
public function set effectTargetHost(value:mx.effects:IEffectTargetHost):void
endValuesCaptured | プロパティ |
protected var endValuesCaptured:Boolean = false
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトの終了値が既に決定されている場合は true
を含むフラグ、エフェクトの実行時にエフェクトターゲットの現在のプロパティから終了値を取得する必要がある場合は false
を含むフラグです。 このプロパティがデータエフェクトで必要なのは、データエフェクト(DefaultListEffect や DefaultTileListEffect など)を設定する順序が通常のエフェクトよりも複雑なためです。
デフォルト値: false。
filter | プロパティ |
filter:String
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトのターゲットをフィルタリングするアルゴリズムを指定します。 値が null
の場合、フィルタリングは指定されません。
ターゲットへのフィルタリングは、エフェクトの再生前に captureStartValues()
を呼び出した場合にのみ実行されます。 エフェクトがトランジションに含まれる場合、またはリストコントロールのデータエフェクトに含まれる場合に、captureStartValues()
メソッドが自動的に Flex から呼び出されます。
単純なフィルタリングには、このプロパティを使用します。 複雑なフィルタリングには、customFilter
プロパティを使用します。 customFilter
プロパティに null 以外の値が含まれている場合、このプロパティは無視されます。
filter
プロパティについては、次の値を使用できます。
- 値が
"add"
の場合、子としてコンテナに追加されるターゲットでエフェクトが再生されます。 - 値が
"addItem"
の場合、List または TileList コントロールに追加されるリストアイテムのアイテムレンダラーでエフェクトが再生されます。 - 値が
"hide"
の場合、visible プロパティがtrue
からfalse
に変更されたターゲットでエフェクトが再生されます。 - 値が
"move"
の場合、x
またはy
プロパティが変更されたターゲットでエフェクトが再生されます。 - 値が
"remove"
の場合、コンテナの子として削除されるターゲットでエフェクトが再生されます。 - 値が
"removeItem"
の場合、List または TileList コントロールから削除されるリストアイテムのアイテムレンダラーでエフェクトが再生されます。 - 値が
"replacedItem"
の場合、List または TileList コントロール内で新しいアイテムに置換されるリストアイテムのアイテムレンダラーでエフェクトが再生されます。 - 値が
"replacementItem"
の場合、既存のアイテムを置換する List または TileList コントロールに追加されるリストアイテムのアイテムレンダラーでエフェクトが再生されます。 - 値が
"resize"
の場合、width
またはheight
プロパティが変更されたターゲットでエフェクトが再生されます。 - 値が
"show"
の場合、visible プロパティがfalse
からtrue
に変更されたターゲットでエフェクトが再生されます。 - 値が
""
の場合、フィルタリングは指定されません。
実装
public function get filter():String
public function set filter(value:String):void
hideFocusRing | プロパティ |
hideFocusRing:Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトの開始時にエフェクトがフォーカス枠を非表示にするかどうかを指定します。エフェクトターゲットは、フォーカス枠を非表示にします。UIComponent クラスのサブクラスは、フォーカス枠を自動的に非表示にします。エフェクトターゲットが UIComponent クラスのサブクラスではない場合は、フォーカス枠を非表示にするための機能を追加します。
エフェクトの再生中にフォーカス枠を非表示にするには、このプロパティを true
に設定します。
Effect のサブクラスのデフォルト値は false
です。 MaskEffect のサブクラスのデフォルト値は true
です。
実装
public function get hideFocusRing():Boolean
public function set hideFocusRing(value:Boolean):void
instanceClass | プロパティ |
public var instanceClass:Class
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
このエフェクトクラスのエフェクトインスタンスクラスを指定する Class 型のオブジェクトを表します。
Effect クラスのすべてのサブクラスによって、コンストラクター内のこのプロパティが必ず設定されます。
isPlaying | プロパティ |
perElementOffset | プロパティ |
playheadTime | プロパティ |
relevantProperties | プロパティ |
relevantProperties:Array
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
フィルタリング実行時に使用するプロパティ名の配列を表します。 このプロパティは内部的に使用され、エフェクトユーザーは設定する必要がありません。
デフォルト値は、getAffectedProperties()
メソッドで返される配列と等しくなります。
実装
public function get relevantProperties():Array
public function set relevantProperties(value:Array):void
relevantStyles | プロパティ |
relevantStyles:Array
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
フィルタリング実行時に使用するスタイル名の配列を表します。 このプロパティは内部的に使用され、エフェクトユーザーは設定する必要がありません。
デフォルト値は、getAffectedProperties()
メソッドで返される配列と等しくなります。
実装
public function get relevantStyles():Array
public function set relevantStyles(value:Array):void
repeatCount | プロパティ |
public var repeatCount:int = 1
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトを繰り返す回数を表します。 有効な値は 0 以上の整数です。値が 1 の場合、エフェクトは 1 回再生されます。値 0 を設定すると、end()
メソッドを呼び出して停止するまで、エフェクトは無制限に再生されます。
デフォルト値: 1。
repeatDelay | プロパティ |
public var repeatDelay:int = 0
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトを繰り返す前の待機時間を表します(ミリ秒単位)。 有効な値は 0 以上の整数です。
デフォルト値: 0。
startDelay | プロパティ |
public var startDelay:int = 0
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトを開始する前の待機時間を表します(ミリ秒単位)。 有効な値は 0 以上の整数です。 repeatCount
プロパティの使用によりエフェクトが繰り返される場合は、エフェクトの初回再生時にのみ startDelay
プロパティが適用されます。
デフォルト値: 0。
suspendBackgroundProcessing | プロパティ |
public var suspendBackgroundProcessing:Boolean = false
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
true
の場合、エフェクトの再生中にすべてのバックグラウンド処理をブロックします。 バックグラウンド処理では、測定、レイアウト、および、サーバーから受信した応答の処理が行われます。 デフォルト値は false
です。
ほとんどの場合、このプロパティを true
に設定することをお勧めします。true に設定すると、アプリケーションのパフォーマンスが向上するためです。 ただし、次のいずれかが成り立つ場合はプロパティを false
に設定してください。
- エフェクトの再生中にユーザー入力を受信する可能性があり、エフェクトの再生が完了する前にアプリケーションでユーザー入力に応答する必要がある場合。
- エフェクトの再生中にサーバーから応答を受信する可能性があり、エフェクトをまだ再生している間にアプリケーションで応答を処理する必要がある場合。
デフォルト値: false。
target | プロパティ |
targets | プロパティ |
targets:Array
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトのターゲットであるオブジェクトの配列を表します。エフェクトの再生時、各ターゲットのエフェクトがパラレル処理で実行されます。 target
プロパティを設定すると、この配列中のすべてのオブジェクトが置換されます。 targets
プロパティが設定されていると、target
プロパティによってこの配列の最初の項目が返されます。
実装
public function get targets():Array
public function set targets(value:Array):void
triggerEvent | プロパティ |
Effect | () | コンストラクター |
public function Effect(target:Object = null)
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
コンストラクターです。
通常、エフェクトの開始は次の 3 つの手順から成るプロセスです。
new
演算子を使用してエフェクトオブジェクトのインスタンスを作成します。duration
など、エフェクトオブジェクトのプロパティを設定します。play()
メソッドを呼び出すか、またはエフェクトをトリガーに割り当てます。
target:Object (default = null ) — このエフェクトでアニメーション化するオブジェクトを表します。
|
applyValueToTarget | () | メソッド |
protected function applyValueToTarget(target:Object, property:String, value:*, props:Object):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトインフラストラクチャによって内部的に使用されます。 captureStartValues()
が呼び出されているときに Flex が play()
メソッドを呼び出す場合、この関数を使用してターゲットを開始状態に戻します。 デフォルトのビヘイビアーでは、getValueFromTarget()
メソッドを使用してキャプチャした値を、ターゲットのプロパティに直接的に設定します。 次に実際の使用例を示します。
target[property] = value;
キャプチャした値を異なる方法で適用する必要がある場合のみ、このメソッドをオーバーライドしてください。 ターゲットのスタイルプロパティは別のメカニズムで設定されます。 キャプチャし、適用するスタイルを指定するには、relevantStyles
プロパティを使用します。
パラメーター
target:Object — エフェクトターゲットを表します。
| |
property:String — ターゲットプロパティを表します。
| |
value:* — プロパティの値です。
| |
props:Object — オブジェクトの配列です。各配列にはエフェクトが監視しているプロパティの start および end オブジェクトが含まれます。
|
captureEndValues | () | メソッド |
public function captureEndValues():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトのターゲットにおいて関連するプロパティの現在値をキャプチャし、終了値として保存します。
エフェクトがデータ変更エフェクトに含まれる場合に、captureEndValues()
メソッドが自動的に Flex から呼び出されます。
captureMoreStartValues | () | メソッド |
captureStartValues | () | メソッド |
public function captureStartValues():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトのターゲットにおいて関連するプロパティの現在値をキャプチャします。 エフェクトがトランジションに含まれる場合に、captureStartValues()
メソッドが自動的に Flex から呼び出されます。
エフェクトの開始値および終了値を把握するためにエフェクトが必要とされる場合は、この関数を使用します。 この関数を正しく使用するには、次の手順に従います。
captureStartValues()
メソッドを呼び出します。 エフェクトはエフェクトの開始値をキャプチャします。- 子の追加または削除、プロパティの変更、位置の変更、またはサイズの変更など、エフェクトターゲットを変更します。
play()
メソッドを呼び出します。 エフェクトは終了値をキャプチャします。 この関数によって、このエフェクトで作成されたエフェクトインスタンスごとのEffectInstance.propertyChanges
プロパティが作成されます。 エフェクト開発者は、propertyChanges
プロパティを使用して、そのエフェクトの開始値および終了値を取得できます。
createInstance | () | メソッド |
public function createInstance(target:Object = null):IEffectInstance
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
1 つのエフェクトインスタンスを作成し、それを初期化します。 play()
メソッドの代わりにこのメソッドを使用して、エフェクトインスタンスの再生前にエフェクトインスタンスのプロパティを操作します。
エフェクトインスタンスは、instanceClass
プロパティで指定された型で作成されます。 次に、initInstance()
メソッドを使用して初期化されます。 インスタンスが EffectManager によって作成されている場合(エフェクトがエフェクトトリガーによってトリガーされる場合)、エフェクトは EffectInstance.initEffect()
メソッドの呼び出しによりさらに初期化されます。
createInstance()
メソッドが呼び出されると、エフェクトは再生されません。 返されたエフェクトインスタンスで startEffect()
メソッドを呼び出します。
この関数は、Effect.play()
メソッドによって自動的に呼び出されます。
パラメーター
target:Object (default = null ) — このエフェクトでアニメーション化するオブジェクトを表します。
|
IEffectInstance — エフェクトのエフェクトインスタンスオブジェクトを表します。
|
createInstances | () | メソッド |
public function createInstances(targets:Array = null):Array
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
ターゲットオブジェクトの配列を取得し、各ターゲットで createInstance()
メソッドを呼び出します。
パラメーター
targets:Array (default = null ) — このエフェクトでアニメーション化するオブジェクトの配列を表します。
|
Array — ターゲットごとに 1 つで、かつエフェクト用でもあるエフェクトインスタンスオブジェクトの配列を表します。
|
deleteInstance | () | メソッド |
public function deleteInstance(instance:IEffectInstance):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
インスタンスからイベントリスナーを削除し、インスタンスのリストからインスタンスを削除します。
パラメーター
instance:IEffectInstance — エフェクトのインスタンスです。
|
effectEndHandler | () | メソッド |
protected function effectEndHandler(event:EffectEvent):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトインスタンスの再生終了時に呼び出されます。 このメソッドをオーバーライドする場合、必ずスーパーメソッドを呼び出すようにしてください。
パラメーター
event:EffectEvent — EffectEvent 型のイベントオブジェクトを表します。
|
effectStartHandler | () | メソッド |
protected function effectStartHandler(event:EffectEvent):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
このメソッドは、エフェクトインスタンスの再生開始時に呼び出されます。 このメソッドをオーバーライドする場合、必ずスーパーメソッドを呼び出すようにしてください。
パラメーター
event:EffectEvent — EffectEvent 型のイベントオブジェクトを表します。
|
effectStopHandler | () | メソッド |
protected function effectStopHandler(event:EffectEvent):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトインスタンスが stop()
メソッドの呼び出しによって停止されると呼び出されます。このメソッドをオーバーライドする場合、必ずスーパーメソッドを呼び出すようにしてください。
パラメーター
event:EffectEvent — EffectEvent 型のイベントオブジェクトを表します。
|
end | () | メソッド |
public function end(effectInstance:IEffectInstance = null):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
現在再生中のエフェクトをすべて中断し、直ちにエフェクトの終わりにジャンプします。 このメソッドが呼び出されると、EffectInstance.end()
メソッドも呼び出されます。
エフェクトの終了処理の一環としてこのメソッドが呼び出されると、エフェクトインスタンスにより effectEnd
イベントが送出されます。
エフェクトインスタンスを引数として渡すと、そのインスタンスは中断されます。 引数が渡されないと、そのときエフェクトから生成されたすべてのエフェクトインスタンスが中断されます。
パラメーター
effectInstance:IEffectInstance (default = null ) — 終了する EffectInstance を表します。
|
filterInstance | () | メソッド |
protected function filterInstance(propChanges:Array, target:Object):Boolean
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトインスタンスをフィルタリングするために必要なロジックを決定します。 このメソッドは、CompositeEffect クラスによってオーバーライドされます。
パラメーター
propChanges:Array — エフェクトによって変更されるプロパティを表します。
| |
target:Object — エフェクトターゲットを表します。
|
Boolean — エフェクトインスタンスを再生する必要がある場合は、true を返します。
|
getAffectedProperties | () | メソッド |
public function getAffectedProperties():Array
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
ストリングの配列を返します。各ストリングは、このエフェクトによって変更されるプロパティの名前です。たとえば、Move エフェクトは "x"
と "y"
から成る配列を返します。
Effect のサブクラスはすべてこのメソッドを実装する必要があります。 このメソッドは、2 つのエフェクトが同時に同一オブジェクトの同一プロパティをアニメーション化しないように EffectManager で使用されます。
戻り値Array — このエフェクトで変更されたプロパティの名前を指定するストリングの配列を表します。
|
さらに例を参照
getValueFromTarget | () | メソッド |
protected function getValueFromTarget(target:Object, property:String):*
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
ターゲットからプロパティの値を取得するために captureStartValues()
メソッドによって呼び出されます。 この関数は、エフェクトフレームワークによってのみ内部的に呼び出されます。 デフォルトのビヘイビアーでは、target[property]
だけを返します。 エフェクトの開発時に異なるビヘイビアーが必要な場合は、この関数をオーバーライドできます。
パラメーター
target:Object — エフェクトターゲットを表します。
| |
property:String — ターゲットプロパティを表します。
|
* — ターゲットプロパティの値です。
|
initInstance | () | メソッド |
protected function initInstance(instance:IEffectInstance):void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトインスタンスにエフェクトのプロパティをコピーします。
Flex は Effect.createInstance()
メソッドからこのメソッドを呼び出します。ユーザーが呼び出す必要はありません。
カスタムエフェクトを作成する際は、このメソッドをオーバーライドして、Effect クラスからエフェクトインスタンスクラスにプロパティをコピーします。 オーバーライドするときは、super.initInstance()
を呼び出します。
パラメーター
instance:IEffectInstance — 初期化するエフェクトインスタンスを表します。
|
さらに例を参照
pause | () | メソッド |
public function pause():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
resume()
メソッドを呼び出すまで、エフェクトを一時停止します。
play | () | メソッド |
public function play(targets:Array = null, playReversedFromEnd:Boolean = false):Array
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトの再生を開始します。 通常は end()
メソッドを play()
メソッドの前に呼び出します。これは、エフェクトの以前のインスタンスを確実に終了させてから新しいインスタンスを開始するためです。
すべてのサブクラスではこのメソッドを実装する必要があります。
パラメーター
targets:Array (default = null ) — このエフェクトを再生するターゲットオブジェクトの配列を表します。 このパラメーターを指定した場合、エフェクトの targets プロパティは使用されません。
| |
playReversedFromEnd:Boolean (default = false ) — true の場合、エフェクトを逆順に再生します。
|
Array — ターゲットごとに 1 つで、かつエフェクト用でもある EffectInstance オブジェクトの配列を表します。
|
resume | () | メソッド |
public function resume():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
pause()
メソッドを呼び出してエフェクトを一時停止した後、再開させます。
reverse | () | メソッド |
public function reverse():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトが現在再生中の場合に、エフェクトの現在位置から開始して、逆順でエフェクトを再生します。
stop | () | メソッド |
public function stop():void
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトターゲットを現在の状態にしたまま、エフェクトを停止します。 pause()
メソッドの呼び出しと異なり、resume()
メソッドを stop()
メソッドの後に呼び出すことはできません。 ただし、play()
メソッドを呼び出してエフェクトを再開できます。
エフェクトの終了処理の一環としてこのメソッドが呼び出されると、エフェクトインスタンスにより effectEnd
イベントが送出されます。
マスクエフェクトの場合、エフェクトを停止してもマスクは自動的に削除されません。 最初のマスクを削除せずに、同じターゲット上でマスクエフェクトをさらに実行すると、予期しない結果が生じる可能性があります。
effectEnd | イベント |
mx.events.EffectEvent
プロパティ EffectEvent.type =
mx.events.EffectEvent.EFFECT_END
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトのインスタンスの 1 つが再生を停止したとき(インスタンスの再生完了時、またはエフェクトが end()
メソッドの呼び出しにより中断されたとき)に送出されます。
EffectEvent.EFFECT_END
定数により、イベントオブジェクトの type
プロパティ値が effectEnd
イベント用に定義されます。
イベントオブジェクトの各プロパティには次の値が設定されています。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | イベント処理を行うイベントリスナーの定義用オブジェクトを表します。 例えば、イベントリスナーの登録に myButton.addEventListener() を使用すると、myButton の値は currentTarget となります。 |
effectInstance | イベントのエフェクトインスタンスオブジェクトを表します。 |
target | イベントを送出したオブジェクトを表します。このオブジェクトは必ずしもイベントを受け取るオブジェクトとは限りません。 イベントを受け取るオブジェクトに常にアクセスするには、currentTarget プロパティを使用してください。 |
effectStart | イベント |
mx.events.EffectEvent
プロパティ EffectEvent.type =
mx.events.EffectEvent.EFFECT_START
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトの再生開始時に送出されます。
EffectEvent.EFFECT_START
定数により、イベントオブジェクトの type
プロパティ値が effectStart
イベント用に定義されます。
イベントオブジェクトの各プロパティには次の値が設定されています。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | イベント処理を行うイベントリスナーの定義用オブジェクトを表します。 例えば、イベントリスナーの登録に myButton.addEventListener() を使用すると、myButton の値は currentTarget となります。 |
effectInstance | イベントのエフェクトインスタンスオブジェクトを表します。 |
target | イベントを送出したオブジェクトを表します。このオブジェクトは必ずしもイベントを受け取るオブジェクトとは限りません。 イベントを受け取るオブジェクトに常にアクセスするには、currentTarget プロパティを使用してください。 |
effectStop | イベント |
mx.events.EffectEvent
プロパティ EffectEvent.type =
mx.events.EffectEvent.EFFECT_STOP
言語バージョン: | ActionScript 3.0 |
製品バージョン: | Flex 3 |
ランタイムバージョン: | Flash Player 9, AIR 1.1 |
エフェクトが停止されると送出されます。これが発生するのは、stop()
メソッドの呼び出しによってエフェクトが中断された場合のみです。また、エフェクトが終了したことを示すために、EFFECT_END イベントも送出されます。この特別なイベントは、エフェクトが終了状態に到達しなかったことを示すインジケーターとして最初にリスナーへ送信されます。
EffectEvent.EFFECT_STOP
定数により、イベントオブジェクトの type
プロパティ値が effectStop
イベント用に定義されます。
イベントオブジェクトの各プロパティには次の値が設定されています。
プロパティ | 値 |
---|---|
bubbles | false |
cancelable | false |
currentTarget | イベント処理を行うイベントリスナーの定義用オブジェクトを表します。 例えば、イベントリスナーの登録に myButton.addEventListener() を使用すると、myButton の値は currentTarget となります。 |
effectInstance | イベントのエフェクトインスタンスオブジェクトを表します。 |
target | イベントを送出したオブジェクトを表します。このオブジェクトは必ずしもイベントを受け取るオブジェクトとは限りません。 イベントを受け取るオブジェクトに常にアクセスするには、currentTarget プロパティを使用してください。 |
<?xml version="1.0"?> <!-- Simple example to demonstrate the Effect class. --> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx"> <fx:Script> <![CDATA[ import mx.controls.Alert; // Event handler for the effectEnd event. private function endEffectHandler():void { Alert.show("Effect Ended!"); } // Event handler for the reset button. private function resetHandler():void { expand.end(); img.width=30; img.height=60; button1.enabled=true; } ]]> </fx:Script> <fx:Declarations> <mx:Resize id="expand" target="{img}" widthTo="100" heightTo="200" duration="10000" effectEnd="endEffectHandler();"/> </fx:Declarations> <s:Panel title="Resize Effect Example" width="100%" height="100%" > <s:VGroup left="20" right="20" top="20" bottom="20"> <s:Label width="100%" color="blue" text="Use the Button controls to control the Resize effect."/> <mx:Image id="img" width="30" height="60" source="@Embed(source='assets/Nokia_6630.png')"/> <s:Button id="button1" label="Start" click="expand.play(); button1.enabled=false;"/> <s:Button label="Pause" click="expand.pause();"/> <s:Button label="Resume" click="expand.resume();"/> <s:Button label="Reverse" click="expand.reverse();"/> <s:Button label="End" click="expand.end();"/> <s:Button label="Reset" click="resetHandler();"/> </s:VGroup> </s:Panel> </s:Application>
Tue Jun 12 2018, 10:34 AM Z