updated 4-2-2007Een extern tekst bestand in flash laden.Als je de tekst wilt veranderen in je flash file, dan kan je natuurlijk de fla weer openen en daarin de tekst veranderen.
Veel gemakkelijker zou zijn als je de tekst ook van buiten af kon veranderen.
Nou, dat kan dus heel erg gemakkelijk, in deze tutorial leg ik je uit hoe je dit kan doen.
Zo moet je tekst bestand eruit zien.Zo halen we het tekstbestand in flash binnen.Zo gebruiken we html in het flash bestand.Het door flash in te laden tekst bestandOm te beginnen heb je natuurlijk een tekst bestand nodig waar je verhaatje instaat, we gaan dus beginnen met een tekstfile te maken met de naam
flashtekstIn dit text bestand typen we nu wat we in flash willen laden.
Stel je wilt het weerbericht tonen in flash, dan typ je
code
weerbericht=vandaag is het zonnig met hier en daar wat regen.&einde
Zoals je ziet heb ik in het begin
weerbericht= gezet, dit is een variable en wat er na de
= komt is de inhoud van die variable.
Op het laatst van de zin staat
&einde, dit doe ik om aan te geven dat er een variable met einde is.
Dit komt zodadelijk aan bod in het flash gedeelte.
tekst in flash halenHet inladen van een tekstbestand in flash kan op verschillende manieren.
De onderstaande code plaatsen we in een keyFrame in de main timeline:
actionscript code//hierin gaan we de variabelen uit het externe tekstbestand opslaan
container = new LoadVars();
//het tekstbestand inladen in de container
container.load("flashtekst.txt");
/* een functie die we laten herhalen totdat "&einde" is ingeladen
einde is de laatste variable in ons tekstbestand */
function laden() {
if (container.einde == undefined) {
//het weerbericht is nog niet geladen
bericht.text = "Het weerbericht word opgehaalt.";
} else {
//zet de variable in een textvak genaamd "bericht"
bericht.text = container.weerbericht;
//de functie stoppen
clearInterval(startLaden);
}
}
/*
met setInterval kan je een functie aanroepen
de 2e parameter in de functie zijn millieseconden
dus met de functie hieronder word er om de 10 milliseconden een beroep
gedaan op de laadfunctie
*/
startLaden = setInterval(laden, 10);
Meerdere tekstvelden vullen met tekst uit één tekstbestandTot nu toe hadden we maar een bericht, namelijk het weerbericht, maar stel dat je het weerbericht voor Belgie EN nederland wilt tonen.
Als je dat allemaal in hetzelfde tekstvak wilt tonen zal dat nogal lastig te lezen zijn, dus we willen de beide weerberichten in aparte tekstvakken tonen.
In flash maken we nu dus 2 tekstvelden met de instancenamen
belgie en
nederland .
De actionscript code veranderen we naar (
zonder uitleg nu )
actionscript codecontainer = new LoadVars();
container.load("flashtekst.txt");
function laden() {
if (container.einde == undefined) {
belgie.text = "Het weerbericht word opgehaalt.";
nederland.text = "Het weerbericht word opgehaalt.";
} else {
belgie.text = container.belgie;
nederland.text = container.nederland;
clearInterval(startLaden);
}
}
startLaden = setInterval(laden, 10);
In het tekstbestand zetten we nu:
code
belgie=In Brussel is het mooi weer.
&nederland=In Amsterdam hangt veel smog.
&einde
Zoals je ziet begint een nieuwe variable met een
&Zo kan je een lange lijst maken met daarin veel verschillende variabelen, het probleem is dat je zin word afgebroken zodra je een & in je zin gebruikt.
Dit is op te lossen door in je flashtekst geen & te gebruiken als je wilt dat je een & ziet, in plaats daarvan gebruik je
%26 voorbeeldjecode
belgie=In Brussel is het mooi weer.
&nederland=In Amsterdam hangt veel smog %26 je mag 3 keer raden hoe die smog daar
komt...(okay flauw)
&einde
Flash voorbeeld
html gebruiken in je tekst (vakken)Flash heeft ook de mogelijkheid om
simpele html tags te gebruiken zoals oa hyperlinks, bold, underlined en images.
Om deze html functies te kunnen gebruiken, moeten we onze tekstvelden html enabelen en de tekst uiteindelijk tonen in
instancenaam.htmlText in plaats van
instancenaam.textactionscript codebelgie.html = true; //html enabelen
nederland.html = true; //html enabelen
container = new LoadVars();
container.load("flashtekst.txt");
function laden() {
if (container.einde == undefined) {
belgie.text = "Het weerbericht word opgehaalt.";
nederland.text = "Het weerbericht word opgehaalt.";
} else {
belgie.htmlText = container.belgie; //html output
nederland.htmlText = container.nederland; //html output
clearInterval(startLaden);
}
}
startLaden = setInterval(laden, 10);
flash voorbeeld
Tot zover deze tutorial over het extern inladen van tekst in flashMocht je toch tegen een probleempje aanbotsen, dan heb ik hier een zip met een werkend voorbeeld.
voorbeeld fla, externe text bestanden inladen in flashAls je de beschikking hebt over php en mysql, dan kan je
deze tutorial eens doornemen, daarin staat hoe je flash met je database kan laten communiceren.
Als deze tut of de voorbeelden niet voldoende waren om een en ander duidelijk te maken, aarzel dan niet om je probleem voor te leggen in het
forum
Je bent niet ingelogged, je kan geen commentaar geven, of commentaren lezen over deze tutorial.