Na początek stwórzmy 3 warstwy: actions, przyciski, pole (w kolejności od górnej). Stwórzmy dwa przyciski na warstwie 'przyciski' jeden z nazwą 'następny' (nazwa instancji next), drugi z nazwą poprzedni (nazwa instancji prev). Dodajmy jeszcze dynamiczne pole tekstowe na warstwie 'pole', o rozmiarach: 400x300 o nazwie instancji pole_txt.
Teraz zaznaczmy pierwszą klatkę warstwy 'actions', wciśnijmy F9 i dodajmy kod z listingu 1.0. Skrypt składa się z 4 funkcji: wczytywanie każdego artykułu do tablicy, rozdzielania oraz pokazywania każdego osobnego artykułu, ukazania następnego oraz poprzedniego artykułu.
Plik artykuly.xml jest widoczny pod listingiem 2.0, jak widać Flash bardzo łatwo komunikuje się z plikami XML.
Listing
//wczytuje plik XML
function loadArticles(success) {
if (success) {
section = new XML();
elementArtykulu = new Array();
section = this.firstChild;
elementArtykulu = section.childNodes;
aktualnyArtykul = 1;
pokazArtykul(aktualnyArtykul-1);
} else {
trace("Nie znaleziono prawidłowego pliku xml.");
}
}
//wyświetla arytul pojedynczy
function pokazArtykul(num) {
elementTekstu = new Array();
elementTekstu = elementArtykulu[num].childNodes;
for (i=0; i<elementTekstu.length; i++) {
pole_txt.text += elementTekstu[i].firstChild.nodeValue + "rr";
}
}
function nastepnyArtykul() {
if (aktualnyArtykul<elementArtykulu.length) {
aktualnyArtykul += 1;
pole_txt.text = "";
pokazArtykul(aktualnyArtykul-1);
}
}
function poprzedniArtykul() {
if (aktualnyArtykul>1) {
aktualnyArtykul -= 1;
pole_txt.text = "";
pokazArtykul(aktualnyArtykul-1);
}
}
cbtNext.addEventListener("click", this.nastepnyArtykul);
cbtPrev.addEventListener("click", this.poprzedniArtykul);
var artykuly:XML = new XML();
artykuly.onLoad = loadArticles;
artykuly.load("artykuly.xml");
//listing 2.0
//zawartość pliku XML
<section><artykul><tytul>Tytul1</tytul><opis>opis1</opis><kontakt>kontakt1</kontakt></artykul>
<artykul><tytul>Tytul2</tytul><opis>opis2</opis><kontakt>kontakt2</kontakt></artykul></section>
Ranga: Administrator serwisu Punktów: 0