Flash gjør kombinere ulike elementer av medier enkelt . Importere og spille en ekstern SWF inne Flash-filmer er en vanlig og nyttig oppgave . Den lar deg gjøre bruk av andre ressurser , og for å skille de forskjellige elementene i et Flash-program , minimere nedlasting ganger og brukervennlighet for folk ser ditt arbeid . Å spille en SWF -fil inne i en annen SWF, må du bare noen få enkle linjer med ActionScript-kode som enkelt kan settes inn og tilpasset dine behov . Instruksjoner
en
Lag din Flash -fil og sette den opp for lasting av andre SWF -fil . Legg noen visuelle eller interaktive funksjoner du ønsker å bruke Flash tegneverktøy og komponenter . Still dine dokumentegenskaper å skape dimensjonene du trenger. Sett inn et nytt lag i Flash-fil ved å trykke på " Insert Layer "-knappen i Tidslinjeområde , navngi lag "tiltak" for å holde koden på ett sted.
2
Legg til kode til Flash din filen ved å klikke " handlinger " lag og åpne Actions panelet , setter inn etter og erstatte navnet på eksterne SWF du ønsker lastet
p Hvis du bruker ActionScript 3.0: .
Div. movieLoader : Loader = new Loader ();
addChild ( movieLoader ) ;
Var movieURL : URLRequest = new URLRequest ( " second_swf_name.swf ");
movieLoader.load ( movieURL ) ;
For ActionScript 2.0:
Var movieLoader : MovieClipLoader = new MovieClipLoader ();
Var holdingClip_mc : MovieClip = _root.createEmptyMovieClip ( " holdingClip_mc " , _root . getNextHighestDepth ( ));
movieLoader.loadClip ( " second_swf_name.swf " , holdingClip_mc ) ;
3
Sett opp ActionScript -kode for å sjekke når SWF har vært fullstendig lastet
I ActionScript 3.0:
movieLoader.contentLoaderInfo.addEventListener ( Event.COMPLETE , swfComplete ) ;
funksjon swfComplete ( completeEvent : hendelse ) : . Void
{ trace (" SWF fullstendig lastet ");
//utføre noen ekstra oppgaver her
movieLoader.contentLoaderInfo.removeEventListener ( Event.COMPLETE , swfComplete ); }
i ActionScript 2.0, må følgende kode legges inn før SWF er lastet (som er linjen med " loadClip " i det) : en
Var swfLoadListener : Object = new Object ();
swfLoadListener.onLoadComplete = function ( target_mc : MovieClip )
{ trace (" SWF fullstendig lastet ");
//utføre noen ekstra oppgaver her
movieLoader . removeListener ( swfLoadListener ); };
movieLoader.addListener ( swfLoadListener ) ;
p Dette gjør at du kan oppdage når SWF er i, slik at koden kan gå videre med noen ekstra behandling oppgaver du ønsker å gjennomføre .
4
Angir statusen lasting til brukerne . Folk er mer sannsynlig å vente på ressurser til å laste om du informerer om status som lasting skrider
For ActionScript 3.0:
movieLoader.contentLoaderInfo.addEventListener ( ProgressEvent.PROGRESS , ShowStatus ) ;
.
funksjon ShowStatus ( pEvent : ProgressEvent ) : void
{ indicator_txt.text = " Laster film : " + ( pEvent.bytesLoaded /pEvent.bytesTotal * 100 ) + "% "; }
< p> For ActionScript 2.0:
swfLoadListener.onLoadProgress = funksjon ( target_mc : MovieClip , numBytesLoaded : Antall , numBytesTotal : Number)
{ indicator_txt.text = " Laster film : " + ( numBytesLoaded /numBytesTotal * 100 ) + "% "; };
Legg et dynamisk tekstfelt til sceneområdet i Flash-filen , skrive Instance Name " indicator_txt " inn i boksen på Properties panelet . Plasser på tekstfeltet for å være synlig mens SWF lastes.
5
Eksporter Flash -fil og laste det opp til en webserver . Teste den for å se at de andre SWF- laster, og at statusen er riktig oppdatert . Hvis SWF ikke laste riktig , sjekk at nettadressen er korrekt , og minnes den plasseringen du angir vil være i forhold til hvor din viktigste SWF ligger. Hvis andre SWF er på en annen server, må du bruke en absolutt URL som angir den fullstendige banen til filmfil , som i følgende eksempel : en
http://swfdomain.com/swfname.swf