Slik ringer du til en SWF-fil i Flash

Slik ringer du til en SWF-fil i Flash


Ringe SWF-filer er en felles oppgave når du oppretter Flash-filmer og programmer. Når du utvikler Flash fungerer kan du gjøre bruk av eksterne ressurser på forskjellige måter. Å kunne importere og bruke andre SWF-filer i ditt eget gir deg muligheten til å bygge dynamiske effekter. Bruke SWF i Flash arbeid er generelt grei, krever bare utdrag av Actionscript-kode. I tillegg til å være i stand til å hente inn eksterne SWF-filer, kan du også kontrollere og samhandle med dem ved hjelp av kode.

Bruksanvisning

1 Lag Flash-filer. Åpne Flash og opprette filen du ønsker å laste en ekstern SWF inn, lagre det med et passende navn. Hvis du ikke allerede har det, også opprette filen du har tenkt å laste inn som en SWF. Velg dimensjonene og angi dokumentegenskaper. Legg et nytt lag i laste filen og gi den navnet "tiltak" for koden din.

2 Legg kode for å importere den eksterne SWF-fil. Det finnes forskjellige Actionscript metoder for lasting SWF-filer. For Actionscript 2.0 kan du bruke denne koden, endre filnavn som passer din egen:
Var myMCLoader: MovieClipLoader = new MovieClipLoader ();
Var myHolder_mc: MovieClip = _root.createEmptyMovieClip ( "myHolder_mc", _root.getNextHighestDepth ());
myMCLoader.loadClip ( "my_external_file.swf", myHolder_mc);

For Actionscript 3.0 kan du bruke denne koden:
Var mySWFLoader: Loader = new Loader ();
addChild (mySWFLoader);
Var minFil: URLRequest = new URLRequest ( "my_external_file.swf");
mySWFLoader.load (minFil);
(Se referanser 1, 2)

3 Lytt til SWF lasting. I Actionscript 2.0, legg denne koden før "loadClip" linje:
Var myMCListener: Object = new Object ();
myMCListener.onLoadComplete = funksjon (target_mc: MovieClip)
{Trace ( "Loaded"); myMCLoader.removeListener (myMCListener); };
myMCLoader.addListener (myMCListener);

I Actionscript 3.0 legge inn denne koden:
mySWFLoader.contentLoaderInfo.addEventListener (Event.COMPLETE, fileLoaded);
fungere fileLoaded (loadEvent: Hendelses): Void
{Trace ( "Loaded"); mySWFLoader.contentLoaderInfo.removeEventListener (Event.COMPLETE, fileLoaded); }
(Se referanser 1, 2, 3)

4 Opprett et element for å vise lasting status. Hvis Flash arbeidet kommer til å bli sett over nettet, bør du angi laste status for brukerne, som hastigheten vil avhenge av deres forbindelser. Legg til følgende for Actionscript 2.0 etter "onLoadComplete" funksjon:
Var load_txt: Textfield = _root.createTextField ( "load_txt", _root.getNextHighestDepth (), 10, 10, 200, 50);
myMCListener.onLoadProgress = funksjon (target_mc: MovieClip, numBytesLoaded: Antall, numBytesTotal: Number)
{Var perc: Number = numBytesLoaded / numBytesTotal * 100;
load_txt.text = "Loading" + perc + "%"; };

For Actionscript 3.0:
mySWFLoader.contentLoaderInfo.addEventListener (ProgressEvent.PROGRESS, loadProgress);
funksjon loadProgress (progEvent: ProgressEvent): void
{Var perc: Number = progEvent.bytesLoaded / progEvent.bytesTotal * 100;
load_txt.text = "Loading" + perc + "%"; }

Du kan også rydde opp, fjerne Lyttere og tekstfeltene ved å legge til "onLoadComplete" eller "fileLoaded" funksjoner:
load_txt._visible = false;

For Actionscript 3.0 inkluderer også:
mySWFLoader.contentLoaderInfo.removeEventListener (ProgressEvent.PROGRESS, loadProgress);
(Se referanser 1, 2, 3)

5 Eksportere både filer og sette Flash arbeidet på en webserver for å sjekke at laste fungerer. Noen ganger ressurser eksternt lastede vil oppføre seg litt annerledes når sett over nettet. Du kan ha å gjøre endringer i interne koden, eller til websiden kode i noen tilfeller. Dersom SWF ikke lastes, sjekk at nettadressen referanser i koden er korrekt, og at filene er på riktig sted.