. .. : Swf.hu 1.0 archívum : Swf.hu főoldal >>> : .. .


 
 
SEGÉDLETEK Navigáció, Scroll

Dinamikus szöveg scroll megoldások - 1 rész
  feltöltve: 2003.11.14 | szerző: Ducky | olvasva: 24600 alkalommal

     
 

Egy csúszó scroll-lal egészítjük ki az alkalmazást. Gondolom nem kell már bemutatni senkinek, miről van szó. A középső gomb, vagyis a csúszka egy draggelhető elem. Így fog kinézni a végredmény:

Nézzük, hogyan is készült ez a csoda.

8. LÉPÉS: Készítsünk még egy gombot, ami a csúszó scroll gomb lesz. Tegyük a gombok layer-re és adjunk neki instance nevet : cbut_btn .

9. LÉPÉS: Ezután térjünk vissza az action layer-re és írjuk át a kódot a következő képpen :

adat = "";
//txt file beolvasása
_root.loadVariables("tar/load.txt");
//tartalom kiíratása
_root.onData = function() {
textb.htmlText = adat;
};
//változók létrehozása a csúszó gomb
//helyzetéhez viszonyítva

xpos = cbut_btn._x;
ypos = cbut_btn._y;
//a csusz a gomb csúszásának mértéke
csusz = 79;
ctav = ypos+csusz;
//csúszó scroll függvénye
function bcscr() {
sc = textb.scroll;
msc = textb.maxscroll;
scs = Math.round(Math.round(Math.abs(ypos-cbut_btn._y))/csusz*100);
ksc = scs;
ascr = ((msc+1)*ksc)/100;
textb.scroll = ascr+1;
}
//csúszó gomb
function cscr() {
_root.onEnterFrame = function() {
bcscr();
};
}
//felső gomb
function scu() {
_root.onEnterFrame = function() {
cbut_btn._y -= 3;
if (cbut_btn._y<=ypos) {
cbut_btn._y = ypos;
}
bcscr();
};
}
//alsó gomb
function scd() {
_root.onEnterFrame = function() {
cbut_btn._y += 3;
if (cbut_btn._y>=ctav) {
cbut_btn._y = ctav;
}
bcscr();
};
}
//törlés
function del() {
delete _root.onEnterFrame;
}

Kicsit hosszú kód, de nem kell megijedni tőle. Lényegében egyszerű. A csúszó scroll gomb útját figyeljük és adjuk vissza százalékos értékben. A text scroll értéke ezzel a százalékos értékkel lesz egyenlő. Ezt a műveletet végzi el a bcscr() függvény. Természetesen ahhoz, hogy ez folyamatosan működjön be kell tenni egy onEnterFrame eseménybe, ez a cscr() függvényben található. Azért csináljuk meg két lépésben, mert az alsó és felső gombokkal szintén meg kell hívnunk a bcscr() függvényt, de mivel a gombok scriptjei már enterFrame-en vannak így szükségtelen lenne újra megtenni. A kód többi része már ismert.

10. LÉPÉS: Már csak egy lépés maradt, a csúszó gombra megírni a scriptet, amivel meghívjuk az aktuális függvényt. Jelöljük ki a csúszó scroll-t és írjuk rá a következő action-t:

on (press) {
startDrag("cbut_btn", false, xpos, ypos, xpos, ctav);
cscr();
}
on (release, releaseOutside) {
stopDrag();
del();
}

Az alsó és felső gombokra írt script marad változatlan az előzőhöz képest. Ezzel kész is vagyunk. Ez a négy alap alkalmazás már elegendő segítség ahhoz, hogy egy komolyabb scroll-t is összehozzatok. Lehet még ezt bővíteni, pl.: ha a text tartalmát nem kell scrollozni akkor a csúszó scroll automatikusan eltűnik, vagy figyeli a text tartalmának hosszát és annak mértékében igazítja a csúszó gomb méretét, stb... A lehetőségek végtelenek. Mindenkinek jó munkát. A Flash Legyen Veletek.

 
     
 
 

© Devnet.hu. A segédletek semmilyen formában nem másolhatók, publikálhatók a Devnet.hu és a szerzők közös írásos engedélye nélkül.
 
. .. : Swf.hu 1.0 archívum : Swf.hu főoldal >>> : .. .