トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   ActionScript 3.0 特設会議室
     Event.COMPLETEおよびremoveEventListenerの仕様に関する疑問
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
misshiki
Åê¹ÆNo.44032
投稿日時: 2009-11-29 23:36
Bak@Fla名人
居住地: 山奥(ガチで)
投稿: 108
使用環境:
WinXP SP1,FLASH MX2004
ADOBE FLASH PLAYER 9
IE6,FireFox1.5,OPERA9.01
Event.COMPLETEおよびremoveEventListenerの仕様に関する疑問
お世話になります。
FlashCS3+ActionScript3の環境です。
今更ながらの質問で大変恐縮なのですが・・・
外部SWFの読み込み処理を実装すべく、LoaderInfoのヘルプを参
照したところ、下記のサンプルコードを発見しました。

var ldr:Loader = new Loader();
var urlReq:URLRequest = new URLRequest("ls.swf");
ldr.load(urlReq);
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, loaded);
addChild(ldr);

function loaded(event:Event):void
{
	trace("complete");
	ldr.contentLoaderInfo.removeEventListener(Event.COMPLETE, loaded);
    var content:Sprite = event.target.content;
    content.scaleX = 2;
}

これを実行したところ、ロード完了後に"complete"の文字が延々と
表示され続けます。
そこでロード完了後の処理にてremoveEventListenerの処理を入れ
たのですが、実行すると相変わらずロード完了後に"complete"の文
字が延々と表示されてしまいます。

疑問点は以下の2つです。

1.LoaderInfoクラスはEvent.COMPLETEをロード完了の1回ではな
く、何回も送出する仕様なのでしょうか?

2.removeEventListenerを記述しているにも関わらず、イベントリスナーが除去されていないように見受けられます。
removeEventListenerではEvent.COMPLETEのイベントリスナーを除
去できない等の制約(仕様)があるのでしょうか?

いずれもヘルプなど参照したのですが、解決に至らなかったので質問させていただきました。
初歩的な質問ゆえ大変恐縮ですが、ご教授いただければ幸いです。
以上、よろしくお願いします。
misshiki
Åê¹ÆNo.44033
投稿日時: 2009-11-29 23:42
Bak@Fla名人
居住地: 山奥(ガチで)
投稿: 108
使用環境:
WinXP SP1,FLASH MX2004
ADOBE FLASH PLAYER 9
IE6,FireFox1.5,OPERA9.01
Re: Event.COMPLETEおよびremoveEventListenerの仕様に関する疑問
自己レスです。

本件ですが、ロード対象のSWFに自分自身を指定するという単純
ミスを発見してしまいました。
それゆえにロード完了後に無限ループが発生したようです。

投稿者削除は不可とのことなので、本投稿をもちまして本件は結了
とさせていただきます。

大変失礼いたしました m(__)m
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops