ActionScript 3.0/Externe-Bestanden: verschil tussen versies
k Typo gecorrigeerd |
Het voorbeeld met het aanroepen van eenbestand verder uitgewerkt. |
||
Regel 11: | Regel 11: | ||
Maak een simpel tekstbestand (.txt) aan met de volgende tekst:<br> |
Maak een simpel tekstbestand (.txt) aan met de volgende tekst:<br> |
||
<source lang="text">msg=Hello World!</source> |
<source lang="text">msg=Hello World!</source> |
||
En noem het bestand ''greeter.txt'' |
En noem het bestand ''greeter.txt''<br> |
||
Maak vervolgens een nieuw flashbestand aan (.fla) en selecteer bij het eerste frame actions(handelingen).<br> |
|||
Neem dan de volgende code over: |
|||
<source lang="actionscript3"> |
|||
//Hieronder maak je een variabele van de klasse URLRequest aan. |
|||
var request:URLRequest = new URLRequest("greeter.txt"); |
|||
//Hierin is greeter.txt de URL naar het bestand. |
|||
//Dit mag dus ook een webadres zijn |
|||
//LET OP! neem dan wel het hele adres over! (incl. http://) |
|||
//Daarna heb je variabele nodig om het bestand te laden. |
|||
var loader:URLLoader = new URLLoader(); |
|||
//Vervolgens laad je het bestand met .load(URLRequest): |
|||
loader.load(request); |
|||
</source> |
|||
<br> |
|||
Nu heb je het bestand aangeroepen, maar voor het verwerken van de opgeroepen informatie heb je een [[ActionScript_3.0/Functies#EventListener|EventListener]] nodig. |
|||
<br> |
|||
<source lang="actionscript3"> |
|||
//Voeg een Eventlistener toe aan de Loader variabele |
|||
loader.addEventListener(event.COMPLETE, CompleteHandler); |
|||
function CompleteHandler(event:Event):void |
|||
{ |
|||
//Maak een nieuwe loader variabele aan om de gegevens te verwerken. |
|||
var loader2:URLLoader = new URLLoader(event.target); |
|||
//Vervolgens wordt de opgehaalde gegevens in .data wordt gezet. |
|||
trace(loader2.data); |
|||
//Output: msg=Hello World! |
|||
} |
|||
</source> |
|||
<br> |
|||
De gegevens komen terug in de klasse ''String'' .<br> |
|||
== Werken met afbeeldingen == |
|||
Natuurlijk kun je deze techniek ook voor afbeeldingen gebruiken.<br> |
|||
== Communiceren met een webserver == |
|||
In sommige gevallen is het handig om cantact te leggen met een server en zelfs daaraan gekoppelde databases.<br> |
|||
{{sub}} |
{{sub}} |
Versie van 28 sep 2011 11:35
Het kan in sommige gevallen handig zijn om met externe bestanden te werken in plaats van alles in het .fla of .swf bestand bij te voegen.
De voordelen hiervan zijn:
- Je .sfw bestand wordt kleiner en is dus sneller te downloaden.
- Je hebt soms niet alle afbeeldingen of andere media nodig die worden bijgevoegd in het .swf bestand.
- Je kunt communiceren met serverscripts en zo ook met databases.
Je hebt hier alleen de klassen URLLoader en URLRequest voor nodig.
Een aanvraag doen naar een bestand
Maak een simpel tekstbestand (.txt) aan met de volgende tekst:
msg=Hello World!
En noem het bestand greeter.txt
Maak vervolgens een nieuw flashbestand aan (.fla) en selecteer bij het eerste frame actions(handelingen).
Neem dan de volgende code over:
//Hieronder maak je een variabele van de klasse URLRequest aan.
var request:URLRequest = new URLRequest("greeter.txt");
//Hierin is greeter.txt de URL naar het bestand.
//Dit mag dus ook een webadres zijn
//LET OP! neem dan wel het hele adres over! (incl. http://)
//Daarna heb je variabele nodig om het bestand te laden.
var loader:URLLoader = new URLLoader();
//Vervolgens laad je het bestand met .load(URLRequest):
loader.load(request);
Nu heb je het bestand aangeroepen, maar voor het verwerken van de opgeroepen informatie heb je een EventListener nodig.
//Voeg een Eventlistener toe aan de Loader variabele
loader.addEventListener(event.COMPLETE, CompleteHandler);
function CompleteHandler(event:Event):void
{
//Maak een nieuwe loader variabele aan om de gegevens te verwerken.
var loader2:URLLoader = new URLLoader(event.target);
//Vervolgens wordt de opgehaalde gegevens in .data wordt gezet.
trace(loader2.data);
//Output: msg=Hello World!
}
De gegevens komen terug in de klasse String .
Werken met afbeeldingen
Natuurlijk kun je deze techniek ook voor afbeeldingen gebruiken.
Communiceren met een webserver
In sommige gevallen is het handig om cantact te leggen met een server en zelfs daaraan gekoppelde databases.