CMD1 | Winter 03 | Properties en Tekstvelden

Variable


Een variable is een "doos" voor informatie die je op wilt slaan. De waarde van een variable kan veranderen tijdens het script. Je kunt naar de naam van een variable verwijzen, om de waarde te bekijken of om deze te wijzigen.

Regels voor variable namen:

Belangrijk! ActionScript is hoofdletter gevoelig! Een variable met de naam "varnaam" is niet hetzelfde als een variable met de naam "VARNAAM"!


Het declareren van een variable

Je kunt een variable als volgt introdiseren

 var varnaam = een waarde  

Eeen variable een waarde toekennen

 var varnaam = "Jaar 1";

De variable naam is aan de linker kant van het "=" karakter en de waarde die je toekent aan de variable staat aan de rechter kant. Nu heeft de variable "varnaam" de waarde "Jaar 1".

Je kunt ook aangeven wat voor soort waarde je toekent.
veel voorkomende zijn b.v. "String" en "Number".
Waarbij de waarde van een string altijd tussen aanhalingstekens staat en geinterpreteerd word als tekst, en de waarde van een number niet tussen aanhalingstekens staat en gezien word als waarde waarmee gerekend kan worden.

 var tekstje:String = "Jaar 1";
 var getal:Number = 7;

zie ook de Flash Help (F1): Naslaggids vaar AS3.0 en AS3.0-componenten > var


De levensduur van een variable

Als je een variable declareert binnen een functie, kan je de variable alleen aanspreken binnen die functie, buiten de functie bestaad die variable niet.
Als je buiten een functie een variable declareert, dan kun je hem in je hele Timeline aanspreken


De waarde van een variable opvragen

Als je wilt weten wat de waarde van een bepaalde variable is dan kun je eenvoudig de functie "trace()" gebruiken.
Probeer onderstaande code uit door deze op het eerste frame te zetten en middels "Ctrl + Enter" te testen.

Nieuwe waarde toekennen:

 var vak:String = "IVID";
 vak = "MME";
 trace(vak);

Optellen van waardes:

 var cijferA:Number = 7;
 var cijferB:Number = 5;
 var uitkomst:Number = cijferA + cijferB;
 trace (uitkomst); 
 var voornaam:String = "Barend ";
 var achternaam:String = "Hendriks";
 var naam:String = voornaam + achternaam;
 trace(naam);

Je kunt ook, in plaats van trace(), gebruik maken van tekstvelden om de waarde van een variable te zien.


Tekstvelden

Binnen Flash zijn er 3 soorten tekstvelden:

Satatische (Static)
Dit is de meest eenvoudige van de de 3, je kunt de tekst tijdens het afspelen van je swf bestand niet wijzigen

Dynamische (Dynamic)
Dit tekstveld steld je in staat bijna alles te wijzigen. Het belangrijkste is dat je de inhoud middels actionscript kunt wijzigen. Je kunt bv de waarde van een variable laten zien.

Invoer (Input)
Deze is gelijk aan de dynamische maar, accepteerd ook input van de gebruiker.

Je kunt het tekstveld veranderen naar een van deze types, zodra je er een met de type tool getekend hebt op de stage.


Tip!

Er zijn dus 3 opties bij het aanmaken van een tekstveld, namelijk "static", "dynamic" en "input". Als je de optie "static" neemt om tekst te laten zien, dan is die tekst ook echt statisch, je hoeft bij static tekst de fonts ook NIET te embedden.
Dat embedden doet flash vanzelf al, omdat flash static tekst ziet als een plaatje. Dat flash static tekst ziet als een plaatje brengt gelijk al weer een probleem met zich mee, vooral als je kleine lettertypes wilt gebruiken zul je het probleem ondervinden dat de tekst in de uiteindelijke swf niet zo duidelijk is. Hier heb ik een klein voorbeeldje van gemaakt, oordeel zelf. De static tekst staat bovenaan, de dynamic tekst eronder.

tips om static tekst toch zo duidelijk mogelijk te maken zijn


Met een dinamisch tekstveld een waarde uitlezen

Als je een dinamisch tekstveld hebt en je geeft het een "instacename", dan kun je middels actionscript de waarde van een variable gebruiken als inhoud van dat tekstveld.

  var klas:String = "CMD_1F";
  tekstveld.text = klas;