エンタープライズ:特集 2003/07/01 15:46:00 更新

JAVA Developer 2003年8月号より転載
FlashとTomcatで実現する使いたくなるWebアプリ (4/10)

●ActionScriptの記述

 スクリプトは、キーフレームやムービークリップに配置することができます。今回は、レイヤー5のキーフレーム(以下、フレームスクリプト)と、レイヤー1のテキスト入力、単一選択、複数選択のフレームに、それぞれ配置した見えないムービークリップ「setup_mc」の4か所に記述します。

 フレームスクリプトには、次の機能を記述しました。

  • 全体の初期化
  • ページ遷移の制御
  • サーバーとの通信
  • データの管理などの共通ロジック
  • プッシュボタンのイベントハンドラ

(1)全体の初期化(リスト4)

 フレームスクリプトの先頭部分が初期化の呼び出しです。フレームスクリプトは、そのフレームが表示される直前に呼び出されます。

 1行目の#includeでは、外部のスクリプトをロードしています。私はXMLについて、正直「しんどい^^;」とつねづね感じています。ノードをひとつひとつ追っていくのは面倒なので、XMLをプロパティっぽくアクセスできるようにデータを変換するために作ってしまったのが、この「xmlutil.as」です。

リスト4 初期化(フレームスクリプトの先頭部分)
#include "xmlutil.as"
loadConfig();
stop();
function loadConfig()
{
    System.useCodePage=true;
    config_xml = new XML();
    config_xml.ignoreWhite=true;
    config_xml.onLoad = loaded;
    config_xml.load ("questionnaire.xml");
}
function loaded (success)
{
    if (success) {
        r = config_xml.firstChild;
        config = new Object();
        analyzeXML(r,config);
        initialize();
    }
    else
    {
        trace ("failed");
    }
}
function initialize()
{
    title_text.text = config["root.title"];
    q_index = 0;
    result = new Array();
    footer.text = "あなたがお使いのFlash Playerのバージョンは '"
                  + getVersion() + "' です。";
}

 loadConfigでは、XMLオブジェクトのloadメソッドを使用して、アプリケーションとアンケートを設定記述したXML文書のロードのみを指示。XMLオブジェクトのコールバック関数loadedを介して、analyzeXMLでXMLをプロパティ形式に変換し、initializeの中で実際の初期化処理を行っています。

 そして3行目のstopでフレームの再生を停止します。先頭のフレームで停止しているので、結果的に先頭の「スタートページ」が表示された状態になります。Flashのオブジェクトがロードされると、自動的にフレームの再生が開始されるので、ここまでの処理はムービーオブジェクトのロードと共に行われることになります。

前のページ | 1 2 3 4 5 6 7 8 9 10 | 次のページ

[佐藤 毅,JAVA Developer]

Copyright © ITmedia, Inc. All Rights Reserved.