Flash

Ładowanie plików do Flasha AS3 – dodatek do kursu dtwarzacz Mp3

Jako dodatek do kursu Odtwarzacz Mp3 Flash, poniżej przedstawię prosty sposób na załadowanie odtwarzacza Mp3 do innego pliku Flasha. Jednocześnie zamieszczam uniwersalny fragment kodu,…

Jako dodatek do kursu Odtwarzacz Mp3 Flash, poniżej przedstawię prosty sposób na załadowanie odtwarzacza Mp3 do innego pliku Flasha. Jednocześnie zamieszczam uniwersalny fragment kodu, który pozwala z pomocą ActionScript 3 ładować do Flasha pliki .swf. Warto zauważyć istotną kwestię:

  • Pliki swf przygotowane w ActionScript 3 można ładować wyłącznie do plików tworzonych w ActionScript 3. Innymi słowy, nie można załadować pliku w AS3 do pliku w AS2!
  • Plików swf przygotowanych w AS2, nie można ładować do plików w AS3

Pomimo, że są to różne pliki swf, jak widać Adobe nie daje nam możliwości łączenia plików AS2 z AS3.

Przejdźmy do ładowania plików swf do Flasha z pomocą ActionScript 3. Kod wygląda następująco:

package {
import flash.display.MovieClip;
import flash.display.DisplayObject;
import flash.display.Loader;
import flash.events.Event;
import flash.events.HTTPStatusEvent;
import flash.events.IEventDispatcher;
import flash.events.IOErrorEvent;
import flash.events.ProgressEvent;
import flash.net.URLRequest;
import flash.display.LoaderInfo;

public class Main2 extends MovieClip {

private var loader:Loader;

public function Main2(){

this.addEventListener(Event.ADDED_TO_STAGE , init);

}

private function init(e:Event):void {
loader = new Loader();
//loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onContentLoadComplete);
configureListeners(loader.contentLoaderInfo);

loader.load(new URLRequest(„mp3Player.swf„));
}

private function configureListeners(dispatcher:IEventDispatcher):void {
dispatcher.addEventListener(Event.COMPLETE, completeHandler);
dispatcher.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);
dispatcher.addEventListener(Event.INIT, initHandler);
dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
dispatcher.addEventListener(Event.OPEN, openHandler);
dispatcher.addEventListener(ProgressEvent.PROGRESS, progressHandler);
dispatcher.addEventListener(Event.UNLOAD, unLoadHandler);
}

private function completeHandler(event:Event):void{
var loader:Loader = LoaderInfo(event.target).loader;
trace(„complete”)
//this.addChild(event.target.content);
this.addChild(loader);
}

private function httpStatusHandler(event:HTTPStatusEvent):void {
trace(„httpStatusHandler: ” + event);
}

private function initHandler(event:Event):void {
trace(„initHandler: ” + event);
}

private function ioErrorHandler(event:IOErrorEvent):void {
trace(„ioErrorHandler: ” + event);
}

private function openHandler(event:Event):void {
trace(„openHandler: ” + event);
}

private function progressHandler(event:ProgressEvent):void {
trace(„progressHandler: bytesLoaded=” + event.bytesLoaded + ” bytesTotal=” + event.bytesTotal);
}

private function unLoadHandler(event:Event):void {
trace(„unLoadHandler: ” + event);
}

}
}

Przykładowy plik z zastosowaniem tego kodu możesz pobrać tutaj:

http://www.eduweb.pl/przyklady/ladowanieAS3.zip

W tekście wyróżniłem fragment ścieżki do pliku, czyli w naszym przypadku mp3Player.swf, oczywiście można wykorzystać inny plik .swf.

Aby w ten sposób załadować nasz player do Flasha, należy jeszcze dokonać pewnych zmian w samym kodzie odtwarzacza, a konkretnie w jednej z jego klas. Wszystkie potrzebne pliki można ściągnąć z pomocą linku, który zamieszczam poniżej:

http://www.eduweb.pl/przyklady/ladowaniePlayer.zip

Należy pamiętać aby po podmianie klasy Main.as ponownie opublikować mp3Player.fla.

To wszystko, mam nadzieję, że kod okaże się przydatny 🙂

Grzegorz Róg

UDOSTĘPNIJ ARTYKUŁ:

Powiązane artykuły

Nowości

Nasz Manifest

Programowanie i WWW

Proces rekrutacji w IT z różnych perspektyw

Podczas ostatnich konsultacji Full-Stack Dev Q&A padło kilka pytań o proces rekrutacyjny. Ze względu na pozytywny feedback oraz zwrócenie uwagi na istotę tego tematu, pomyślałem że zbiorę…

Programowanie i WWW

Proces rekrutacji w IT z różnych perspektyw

Podczas ostatnich konsultacji Full-Stack Dev Q&A padło kilka pytań o proces rekrutacyjny. Ze względu na pozytywny feedback oraz zwrócenie uwagi na istotę tego tematu, pomyślałem że zbiorę…

Grafika i Interfejsy

Rigging w After Effects

Na Eduweb pojawiło się już klika warsztatów szkoleniowych na temat animacji postaci w Adobe After Effects, są dostępne tu: https://eduweb.pl/wideo-i-audio/after-effects/animacja-w-after-effects . W kilku z nich do animacji…

Pozostań na bieżąco!

Już nigdy nie przegapisz ważnych informacji, promocji oraz nowych kursów. Zapisz się na newsletter już teraz!

Zapisując się do newslettera akceptujesz naszą politykę prywatności