2008年5月4日日曜日

Flexアプリケーションのロード直後に関数を呼び出す

Flexアプリケーションはイベントドリブンプログラミングの方式なので、Flash Playerによりロードされると事前に定義されたオブジェクトが配置された状態で、ブラウザ内に表示されます。

もちろんこれで初期化が十分ならいいのですが、アプリケーション開始後に実際のコンテンツをほかのURLからXMLデータとしてダウンロードしたい場合など、アプリケーションの開始直後に初期化ルーチンを呼び出したいケースがあります。

このような場合にはApplicationクラスinitializeイベントがありますので、このイベントハンドラをトリガに初期化ルーチンを起動できます。


Application.initializeイベントのハンドラとしてOnInitialize()を指定する例を以下に示します。


<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"

    horizontalAlign="center" verticalAlign="center" initialize="OnInitialize()">

OnInitialize()内では、そのアプリケーションの初期化処理を行います。ここではUItimer(Timerクラス)を初期化する例を示します。


private function OnInitialize(): void {

    UItimer = new Timer(100, 0);

    UItimer.addEventListener("timer", OnTimerEvent);

    UItimer.start();

}

0 件のコメント:

コメントを投稿