0

少数の画像を選択するときに問題なく動作するこのコードがあります。

public var fileReferenceList:FileReferenceList;

public function browseFiles(event:Event = null):void 
{
    fileReferenceList= new FileReferenceList();
    fileReferenceList.addEventListener(Event.SELECT,onMultipleFileSelect);
    fileReferenceList.browse("images");
}

private function onMultipleFileSelect(event:Event):void
{
    fileReferenceList.removeEventListener(Event.SELECT,onMultipleFileSelect);
    var fileList:Array = event.target.fileList;
    trace(fileList[0].name);
}

ただし、多数の画像 (1000 以上) を選択する場合、SELECT イベントが送出されたときに fileList はまだ初期化されていません。fileList が初期化されるのを待つ方法はありますか?

4

1 に答える 1

1

ほー少年。それほど多くのファイルを選択したときに、希望するようなパフォーマンスが得られるとは思いませんが、考えられる解決策は、fileList が null かどうかを確認し、そうであれば、fileList への参照を次のように受け取る関数を呼び出すことです。 callLater を使用するパラメーター。そのメソッドで、まだ null かどうかを確認してから、callLater を使用して関数を再度呼び出します。これに関する保証はありません。UI イベント ハンドラー内のものを処理するための FileReferenceList サンドボックス要件のために、機能しない可能性があります。幸運を祈ります。

于 2010-08-31T23:35:29.780 に答える