[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
サウンドファイルが非常に大きくて、ロードに時間がかかることがあります。サウンドが完全にロードされる前に、Flash Player および AIR でアプリケーションからそのサウンドを再生する場合、ロード済みになったサウンドデータの量および既に再生されたサウンドデータの量をユーザーに示すことができます。
Sound クラスは、サウンドのロードの進行状況を比較的簡単に表示できるようにする、ProgressEvent.PROGRESS および Event.COMPLETE という 2 つのイベントを送出します。次の例は、これらのイベントを使用して、サウンドのロードの進行状況に関する情報を表示する方法を示しています。
import flash.events.Event; import flash.events.ProgressEvent; import flash.media.Sound; import flash.net.URLRequest; var s:Sound = new Sound(); s.addEventListener(ProgressEvent.PROGRESS, onLoadProgress); s.addEventListener(Event.COMPLETE, onLoadComplete); s.addEventListener(IOErrorEvent.IO_ERROR, onIOError); var req:URLRequest = new URLRequest("bigSound.mp3"); s.load(req); function onLoadProgress(event:ProgressEvent):void { var loadedPct:uint = Math.round(100 * (event.bytesLoaded / event.bytesTotal)); trace("The sound is " + loadedPct + "% loaded."); } function onLoadComplete(event:Event):void { var localSound:Sound = event.target as Sound; localSound.play(); } function onIOError(event:IOErrorEvent) { trace("The sound could not be loaded: " + event.text); }