UILoader コンポーネントの使用

UILoader コンポーネントは、SWF、JPEG、プログレッシブ JPEG、PNG および GIF の各ファイルを表示できるコンテナです。異なる場所からコンテンツを取得して Flash アプリケーションに読み込む必要がある場合には UILoader コンポーネントを使用します。 例えば、UILoader を使用して企業のロゴ (JPEG ファイル) をフォームに追加することが可能です。 また、アプリケーションで UILoader コンポーネントを使用すると、写真を表示することもできます。 load() メソッドを使用してコンテンツをロードし、 percentLoaded プロパティでどれだけのコンテンツがロードされたかを検出し、 complete イベントでロードが完了するタイミングを検出します。

UILoader のコンテンツを拡大および縮小したり、コンテンツのサイズに合わせて UILoader 自身のサイズを変更したりできます。 デフォルトでは、UILoader に合わせてコンテンツが拡大または縮小されます。 さらに、実行時にコンテンツをロードして、ロードの進行状況を監視できます (ただし、コンテンツは一度ロードされるとキャッシュに残るので、ロードの進行状況はすぐに 100% に達します)。 UILoader にコンテンツをロードするときに位置を指定する場合は、その位置 (X 座標および Y 座標) を 0, 0 と指定する必要があります。

UILoader コンポーネントのユーザー操作

UILoader コンポーネントはフォーカスを取得できません。ただし、UILoader コンポーネント内にロードしたコンテンツ自体は、フォーカスの取得やフォーカス操作が可能です。 フォーカスの制御について詳しくは、「 Adobe Flash Professional CS5 用 ActionScript 3.0 リファレンスガイド 」の FocusManager クラスおよび FocusManager の操作 を参照してください。

UILoader コンポーネントのパラメーター

プロパティインスペクターまたはコンポーネントインスペクターで UILoader コンポーネントの各インスタンスに設定できるオーサリングパラメーターは、 autoLoad maintainAspectRatio source および scaleContent です。これらの各パラメーターには、対応する同名の ActionScript プロパティがあります。

ライブプレビューでは、オーサリング時にプロパティインスペクターまたはコンポーネントインスペクターで各 UILoader インスタンスのパラメーターに加えた変更が反映されます。

ActionScript を記述すれば、UILoader コンポーネントのメソッド、プロパティ、イベントを使用して、UILoader インスタンスのその他のオプションを設定できます。 詳しくは、「 Adobe Flash Professional CS5 用 ActionScript 3.0 リファレンスガイド 」の UILoader クラスを参照してください。

UILoader コンポーネントを使用したアプリケーションの作成

次の手順は、オーサリング時に UILoader コンポーネントをアプリケーションに追加する方法を示しています。 この例では、ローダーでロゴの GIF イメージをロードします。

  1. 新しい Flash (ActionScript 3.0) ドキュメントを作成します。

  2. UILoader コンポーネントをコンポーネントパネルからステージまでドラッグします。

  3. プロパティインスペクターで、インスタンス名として aUI と入力します。

  4. ステージ上およびコンポーネントインスペクターでローダーを選択して、 source パラメーターに http://www.helpexamples.com/images/logo.gif と入力します。

ActionScript を使用した UILoader コンポーネントインスタンスの作成

この例では、ActionScript を使用して UILoader コンポーネントを作成し、花の JPEG イメージをロードします。 complete イベントが発生すると、ロードされたバイト数が出力パネルに表示されます。

  1. 新しい Flash (ActionScript 3.0) ドキュメントを作成します。

  2. UILoader コンポーネントをコンポーネントパネルからライブラリパネルにドラッグします。

  3. アクションパネルを開いて、メインタイムライン内でフレーム 1 を選択し、次の ActionScript コードを入力します。

    import fl.containers.UILoader; 
     
    var aLoader:UILoader = new UILoader(); 
    aLoader.source = "http://www.flash-mx.com/images/image1.jpg"; 
    aLoader.scaleContent = false; 
    addChild(aLoader); 
     
    aLoader.addEventListener(Event.COMPLETE, completeHandler); 
    function completeHandler(event:Event) { 
        trace("Number of bytes loaded: " + aLoader.bytesLoaded); 
    }
  4. 制御/ムービープレビューを選択します。