ビヘイビアの使用

"ビヘイビア" とは、トリガとエフェクトを組み合わせたものです。"トリガ" はイベントとよく似ていますが、マウスのクリック、フォーカスの移動、不可視状態から可視状態への変更など、コンポーネントに対して行われる操作を特に指します。"エフェクト" はコンポーネント上で一定時間 (ミリ秒単位) に発生する視覚的または聴覚的変化です。エフェクトには、コンポーネントのフェード、サイズ変更、移動などがあります。1 つのトリガに対して複数のエフェクトを定義することもできます。

Flex のトリガプロパティは CSS スタイルで実装されています。『Adobe Flex 2 リファレンスガイド』では、トリガは "エフェクト" の見出しの下に一覧で示されています。Flex のエフェクトは、mx.effects.Fade クラスなどのクラスです。

ビヘイビアを使用すると、アニメーション、モーション、サウンドなどを、ユーザーまたはプログラムによって実行される特定の操作に応答する形で、アプリケーションに追加できます。たとえば、ビヘイビアを使用すると、ダイアログボックスにフォーカスが移ったときにわずかに飛び跳ねるような効果を付けたり、不適切な値が入力された場合に音が鳴るようにすることができます。

エフェクトトリガは CSS スタイルで実装されているため、トリガプロパティは MXML のタグ属性、<mx:Style> タグ、または ActionScript の setStyle 関数を使用して設定できます。

ビヘイビアを作成するには、特定のエフェクトを一意の ID で定義し、それをトリガにバインドします。たとえば次のコードでは、myFade という名前のフェードエフェクトを作成し、MXML 属性を使用して、そのエフェクトを Image コントロールの creationCompleteEffect トリガにバインドしています。

<?xml version="1.0"?>
<!-- components\CompIntroBehaviors.mxml -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
    width="110" 
    height="100" 
    backgroundImage="">

    <mx:Fade id="myFade" duration="5000"/>
    <mx:Image 
        creationCompleteEffect="{myFade}"
        source="@Embed(source='assets/flexlogo.jpg')"/>
</mx:Application>

この例では、Image コントロールが 5000 ミリ秒かけてフェードインします。イメージは時間の経過に伴って次のようにフェードインします。


時間経過に伴ってフェードインする Image コントロール

ビヘイビアの使用の詳細については、ビヘイビアの使用を参照してください。


Flex 2.01