例: アニメーションポートフォリオピース

この例は、ActionScript のピースをつなげて、完全な (または ActionScript が多用されている) アプリケーションを作成する方法を示す最初の例です。アニメーションポートフォリオピースは、既存の線状アニメーション (クライアントのために作成されたピースなど) に小さなインタラクティブ要素を追加して、そのアニメーションをオンラインポートフォリオに組み込む方法を示す 1 つの例です。アニメーションに追加するインタラクティブビヘイビアには、ユーザーがクリックできる 2 つのボタンが含まれます。1 つはアニメーションを開始するボタンであり、もう 1 つは別の URL (ポートフォリオメニューや作者のホームページなど) に移動するボタンです。

このピースを作成するプロセスは、以下のメインセクションに分けることができます。

  1. ActionScript とインタラクティブ要素を追加するための FLA ファイルを準備します。
  2. ボタンを作成して追加します。
  3. ActionScript コードを作成します。
  4. アプリケーションのテスト

サブトピック

インタラクティブ機能を追加する準備
ボタンの作成と追加
コードの作成
アプリケーションのテスト

インタラクティブ機能を追加する準備

アニメーションにインタラクティブ要素を追加する前に、FLA ファイルに新しいコンテンツを追加する場所を作成しておくと便利です。これには、ボタンを配置する実際の場所をステージに作成しておく作業と、さまざまなアイテムを切り離しておくための FLA ファイル内の "スペース" の作成が含まれます。

インタラクティブ要素を追加するために FLA をセットアップするには、次のようにします。

  1. インタラクティブ機能を追加する線状アニメーションがまだ存在しない場合は、シングルモーショントゥイーンやシェイプトゥイーンなどの単純なアニメーションを含む新しい FLA ファイルを作成します。アニメーションがある場合は、プロジェクトでショーケースするアニメーションを含んでいる FLA ファイルを開き、新しい名前で保存して、新しい作業ファイルを作成します。
  2. 2 つのボタン (アニメーションを開始するボタンと、作者のポートフォリオやホームページにリンクするボタン) を表示する画面上の位置を決めます。必要な場合は、ステージ上にこの新しいコンテンツのためのスペースを作ります。アニメーションにスプラッシュ画面がない場合は、最初のフレームにスプラッシュ画面を作成することもできます (その場合、アニメーションがフレーム 2 以降から始まるようにアニメーションをシフトできます)。
  3. タイムラインの他のレイヤーの上に新しいレイヤーを追加して、buttons という名前に変更します。このレイヤーが、ボタンを追加するレイヤーになります。
  4. buttons レイヤーの上に新しいレイヤーを追加して、actions という名前を付けます。これが、アプリケーションに ActionScript コードを追加する場所になります。

ボタンの作成と追加

次に、インタラクティブアプリケーションの中心となるボタンを実際に作成して、配置する必要があります。

ボタンを作成して、FLA に追加するには:

  1. 描画ツールを使用して、buttons レイヤーの最初のボタン ("play" ボタン) の外観を作成します。たとえば、横長の楕円形の上にテキストを付けます。
  2. 選択ツールを使用して、1 つのボタンのすべてのグラフィックパーツを選択します。
  3. メインメニューから、[変更]-[シンボルに変換] を選択します。
  4. ダイアログボックスでシンボルのタイプとして [ボタン] を選択し、シンボルに名前を付けて、[OK] をクリックします。
  5. ボタンを選択すると、プロパティインスペクタはボタンに playButton というインスタンス名を付けます。
  6. ステップ 1 ~ 5 を繰り返して、作者のホームページに移動するためのボタンを作成します。このボタンに homeButton という名前を付けます。

コードの作成

このアプリケーションの ActionScript コードは 3 つの機能セットに分けることができますが、すべて同じ場所に入力されます。このコードでは、次の 3 つのことを行う必要があります。

フレーム 1 に入ったときに再生ヘッドを停止するコードを作成するには:

  1. actions レイヤーのフレーム 1 のキーフレームを選択します。
  2. メインメニューから [ウィンドウ]-[アクション] を選択して、[アクション] パネルを開きます。
  3. [スクリプト] ペインに次のコードを入力します。
    stop();
    

再生ボタンがクリックされたときにアニメーションを開始するコードを作成するには:

  1. 前のステップで入力したコードの末尾に、空白行を 2 行追加します。
  2. スクリプトの末尾に、次のコードを入力します。
    function startMovie(event:MouseEvent):void
    {
        this.play();
    }
    

    このコードでは、startMovie() という名前の関数を定義します。startMovie() が呼び出されると、メインタイムラインが再生を開始します。

  3. 前のステップで追加したコードの次の行に、次のコード行を入力します。
    playButton.addEventListener(MouseEvent.CLICK, startMovie);
    

    このコード行は、startMovie() 関数を playButtonclick イベントのリスナーとして登録します。言い換えると、playButton という名前のボタンがクリックされるたびに startMovie() 関数が呼び出されるようにします。

ホームページボタンがクリックされたときにブラウザを URL に移動するコードを作成するには:

  1. 前のステップで入力したコードの末尾に、空白行を 2 行追加します。
  2. スクリプトの末尾に、次のコードを入力します。
    function gotoAuthorPage(event:MouseEvent):void
    {
        var targetURL:URLRequest = new URLRequest("http://example.com/");
        navigateToURL(targetURL);
    }
    

    このコードは、 gotoAuthorPage() という名前の関数を定義します。この関数は、まず http://example.com/ という URL を表す URLRequest インスタンスを作成し、その URL を navigateToURL() 関数に渡します。これによって、ユーザーのブラウザでその URL が開きます。

  3. 前のステップで追加したコードの次の行に、次のコード行を入力します。
    homeButton.addEventListener(MouseEvent.CLICK, gotoAuthorPage);
    

    このコード行は、gotoAuthorPage() 関数を homeButton' の click イベントのリスナーとして登録します。言い換えると、homeButton という名前のボタンがクリックされるたびに gotoAuthorPage() 関数が呼び出されるようにします。

アプリケーションのテスト

この時点で、アプリケーションは完全に機能するはずです。テストして、確認してみましょう。

アプリケーションをテストするには:

  1. メインメニューから、[コントロール]-[ムービープレビュー] を選択します。Flash で SWF ファイルが作成され、Flash Player ウィンドウで開かれます。
  2. 両方のボタンが期待通りに機能するか確認してみます。
  3. ボタンが機能しない場合は、以下の点を確認してください。

    このような間違いがあると、[ムービープレビュー] コマンドを選択したときやボタンをクリックしたときにエラーメッセージが表示されます。[コンパイルエラー] パネルでコンパイルエラー (初めて [ムービープレビュー] を選択したときに発生するエラー) がないかどうかを確認し、[出力] パネルでランタイムエラー (ユーザーがボタンをクリックしたときなど、SWF の再生中に発生するエラー) がないかどうかを確認してください。


 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00000026.html