Flash MX 2004から実装された、MovieClipLoaderクラスを使用すると、読み込み状況の確認や、読み込み完了時処理の定義などを、簡単に行うことができます。


ステージ上に、
 画像読み込み用ムービークリップload_mc
 読み込み開始実行用ムービークリップstart_mc
を配置してある状態で、ルートタイムラインに以下のActionScriptを記述します。
//MovieClipLoader作成
cLoad     = new MovieClipLoader();
//リスナー作成
cLsnr     = new Object();
//リスナーを登録
cLoad.addListener(cLsnr);
//「読み込み」を押したら読み込み開始
start_mc.onPress = function(){ cLoad.loadClip("pic.jpg",load_mc); }
//リスナーイベント
cLsnr.onLoadComplete = function(target_mc){
  //ダウンロードが完了した時に呼び出されます。
  //ただし、ムービークリップの初期化が完了していないので、
  //ムービークリップのプロパティ(_width)などにアクセスしたい場合は、
  //onLoadInitの方が良いです。
  //ここでのtarget_mcは、load_mcを指します。
}
cLsnr.onLoadError = function(target_mc, errorCode){
  //ロードに失敗した時に呼び出されます。
  //errorCodeにエラーコードが渡されます。
  trace(errorCode);
}
cLsnr.onLoadInit = function(target_mc){
  //読み込んだファイルの先頭フレームアクションが実行された時に呼び出されます。
  //ムービークリップの初期化なども済んでいるため、
  //画像のサイズを確認したい場合などに有効です。
  trace("画像の横幅" + target_mc._width);
  //load_mcは、読み込み前50*50のサイズにしてありますが、
  //このイベントが発生した時には、読み込んだ画像のサイズになっています。
}
cLsnr.onLoadProgress = function(target_mc, loadedBytes, totalBytes){
  //ダウンロードしているファイルが、ディスクに書き込まれるたびに呼び出されます。
  //ダウンロードの進捗状況を確認することができます。
  trace(loadedBytes + "/" + totalBytes);
  //↑ダウンロードにかかる時間があまりに短い場合、表示されません。
}
cLsnr.onLoadStart = function(target_mc){
  //ダウンロードが正常に開始できた時に呼び出されます。
  trace("ダウンロード開始できました。");
}

start_mcをクリックすると、load_mcに画像を読み込みます。

サンプルはこちらからダウンロードできます。imgzipファイル[310clicks]