Forum FAQForum FAQSearchSearch MemberlistMemberlist Forum ignore listForum ignore list RegisterRegister ProfileProfile Log in to check your private messagesLog in to check your private messages Log inLog in
pomoc s loaderom...

 
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    mi3dot.org Forum Index -> Flash
View previous topic :: View next topic  
Author Message
cilic



Joined: 29 Oct 2005
Posts: 20
Location: zagreb

PostPosted: 13.11.2006 19:10    Post subject: pomoc s loaderom... Add user to your forum ignore list Reply with quote

naime...

imam sajt sa cirka 200 slika, svaka se loada pritiskom na neki gumb... buduci da ih ima oko 35Mb mislio sam ih stavit na server pa loadat s te lokacije....

pitanje...

kako napraviti preloader za svaku fotku, koju loadam izvana u prazni mc swf-a ?

pozdrav!
Back to top
View user's profile Send private message Send e-mail
blackduke
mi3.crew


Joined: 08 Sep 2003
Posts: 2681
Location: Zagreb

PostPosted: 14.11.2006 01:15    Post subject: Add user to your forum ignore list Reply with quote

loudas u holder i onda vadis podatke za holder
znaci
holder.getBytesLoaded() i holder.getBytesTotal()
Back to top
View user's profile Send private message Visit poster's website Twitter profile
cilic



Joined: 29 Oct 2005
Posts: 20
Location: zagreb

PostPosted: 17.11.2006 22:33    Post subject: Add user to your forum ignore list Reply with quote

ajde mi molim te to malo pojasni.., step by steep please....
imam dataholder i... kak loadam u njega pa iz njega buduci da imam puno slika...
fala
Back to top
View user's profile Send private message Send e-mail
dblchckd



Joined: 02 Apr 2006
Posts: 106

PostPosted: 18.11.2006 22:44    Post subject: Add user to your forum ignore list Reply with quote

Pokusat cu ti predstaviti jednostavan primjer koncepta ucitavanja sa MovieClipLoader klasom, koji za razliku od koristenja metoda MovieClip klase getBytesLoaded() i getBytesTotal pruza mnogo vise funkcionalnosti kod ucitavanja i razne mogucnosti da razradis nacin ucitavanja i njegovog prikaza.
Ovdje je prikazano samo najosnovnije sto ti je potrebno da bi lakse shvatio o cemu se radi, a izmjene ili daljnja razrada su na tebi.

Da bi kod prikazan dolje radio potrebno je da imas mc nazvan slikaHolder u koji ces loadati slikice i jednostavan mc nazvan preloader koji moze biti recimo obican izduzeni pravokutnik koji se nalazi na lejeru iznad slikaHoldera. Ti, naravno, izmjeni koncept i nazive kako hoces.

U kodu dolje se kreira MovieClipLoader instance i listener objekt na kojem definiras listener funkcije koje se pokrecu na odredjeni dogadjaj ("npr. kad loadanje pocne, ili zavrsi ili...whatever).
U ovom slucaju te funkcije koristis samo da bi animirao preloader i ucinio ga vidljivim odnosno nevidljivim. Takodjer, u ovom primjeru uvijek koristis jedan te isti preloader mc za loadanje slika. Svaki put kad pozoves loadClip() da loadas novu sliku, preloader se resetira, a stara slika se sama ukloni, jer kad kad loadas nesto u mc sav njegov prethodni sadrzaj nestane.

Moguce je napraviti slozeniji scenario, recimo ako zelis ucitavati slike na vise mjesta (npr. ucitati thumbnaile od kojih svaki ima svoj preloader) onda mozes kreirati thumbnail mc koji sadrzi holder i preloader. Ucitavat ces sa loadClip("path/slika1.jpg", thumbnail1.holder).
Pomocu parametra mc u event listener funkcijama imas pristup mciju u koji loadas, pa ces pomocu njega moci pristupiti i svakom preloaderu. Npr:
slikaLoaderListener.onLoadStart = function(mc){
mc._parent.preloader._xscale = 0;
preloader._visible = true;
}
Zatim mozes imati i error tekst koji ces prikazati umjesto slike ako ucitivanje iz nekog razloga ne uspije. Za to ces morati definirati onLoadError listener funkciju na slikaLoaderListeneru... itd.
Onda naravno mozes recimo risajzati sliku kad se ucita, ufejdati je pomocu neke svoje custom funkcije pojaviSe() koju ces pozvati unutar onLoadInit funkcije, ili postepeno fejd outati preloader umjesto da ga samo ucinis nevidljivim kad vise nije potreban, pozivajuci svoju nestani() funkciju unutar onLoadInit event listenera... itd, što god ti padne napamet...
Ovo su ti samo smjernice kako mozes poslije razvijati loadanje svojih slika. Ne znam koliko je tvoje znanje actionscripta pa se nadam da ti jasno o cemu govorim, a za podrobnija objasnjenja nije bas da previse vremena.
U svakom slucaju ako imas pitanja u vezi primjera prikazanog dolje slobodno pitaj.

//potrebni su ti:
//-otvoren novi prazan .fla u tvom fleshu sa tri lejera
//- jedan prazan mc nazvan slikaHolder u najdonjem lejeru
//- na lejeru iznad slikaHoldera mc nazvan preloader koji jepolozeni izduzeni pravokutnik
//- pravilan path do slike koju ces loadati kad pozoves loadClip() (na dnu koda)
//-zlica vegete

//pejstaj ovaj kod u prvi frejm na najgornjem lejeru, promijesaj i probaj Ctrl+Enter


// početne postavke

preloader._xscale = 0; //resetiraj preloader
preloader._visible = false; //sakrij preloader


// napravi MovieClipLoader i definiraj listener funkcije
var slikaLoader = new MovieClipLoader();
var slikaLoaderListener = new Object();
slikaLoader.addListener(slikaLoaderListener);

//ova listener funkcija je pozvana samo jednom, kad ucitavanje pocne
slikaLoaderListener.onLoadStart = function(mc){
preloader._xscale = 0; //resetiraj preloader
preloader._visible = true; //učini ga vidljivim
}

//ova listener funkcija je pozvana svaki put kad se ucita dio podataka na hard
//ona animira tvoj preloader

slikaLoaderListener.onLoadProgress = function(mc, loaded, total){
var postotak = Math.ceil(loaded/total*100); //cuva iznos postotka ucitanih podataka
preloader._xscale = postotak;
}

//ova listener funkcija je pozvana kad je slika/swf ucitana i inicirana
//tad su ti dostupni propertiji tvoje slike pa se tad mozes njima posluziti
//da risajzas sliku prije nego je prikazana ili napravis s njom sto vec zelis
//u ovom jednostavnom primjeru sluzi samo da ucinis preloader nevidljivim jer ti vise ne treba

slikaLoaderListener.onLoadInit = function(mc){
preloader._visible = false;
}

//pozovi loadClip() da ucitas sliku u zeljeni mc
//parametri su: 1. path do tvoje slike ("tvojPath/01.jpg") i 2.referenca na mc u koji zelis ucitati sliku (slikaHolder)
//funkciju pozovi onda ti je to potrebno, na pritisak gumba ili kako si vec zamislio

slikaLoader.loadClip("tvojPath/01.jpg", slikaHolder);
Back to top
View user's profile Send private message
carr



Joined: 13 Nov 2003
Posts: 1397
Location: Karlovac

PostPosted: 19.11.2006 13:04    Post subject: Add user to your forum ignore list Reply with quote

dblchckd wrote:
Pokusat cu ti predstaviti jednostavan primjer koncepta ucitavanja sa MovieClipLoader klasom, koji za razliku od koristenja metoda MovieClip klase getBytesLoaded() i getBytesTotal pruza mnogo vise funkcionalnosti kod ucitavanja i razne mogucnosti da razradis nacin ucitavanja i njegovog prikaza.
Ovdje je prikazano samo najosnovnije sto ti je potrebno da bi lakse shvatio o cemu se radi, a izmjene ili daljnja razrada su na tebi.

Da bi kod prikazan dolje radio potrebno je da imas mc nazvan slikaHolder u koji ces loadati slikice i jednostavan mc nazvan preloader koji moze biti recimo obican izduzeni pravokutnik koji se nalazi na lejeru iznad slikaHoldera. Ti, naravno, izmjeni koncept i nazive kako hoces.

U kodu dolje se kreira MovieClipLoader instance i listener objekt na kojem definiras listener funkcije koje se pokrecu na odredjeni dogadjaj ("npr. kad loadanje pocne, ili zavrsi ili...whatever).
U ovom slucaju te funkcije koristis samo da bi animirao preloader i ucinio ga vidljivim odnosno nevidljivim. Takodjer, u ovom primjeru uvijek koristis jedan te isti preloader mc za loadanje slika. Svaki put kad pozoves loadClip() da loadas novu sliku, preloader se resetira, a stara slika se sama ukloni, jer kad kad loadas nesto u mc sav njegov prethodni sadrzaj nestane.

Moguce je napraviti slozeniji scenario, recimo ako zelis ucitavati slike na vise mjesta (npr. ucitati thumbnaile od kojih svaki ima svoj preloader) onda mozes kreirati thumbnail mc koji sadrzi holder i preloader. Ucitavat ces sa loadClip("path/slika1.jpg", thumbnail1.holder).
Pomocu parametra mc u event listener funkcijama imas pristup mciju u koji loadas, pa ces pomocu njega moci pristupiti i svakom preloaderu. Npr:
slikaLoaderListener.onLoadStart = function(mc){
mc._parent.preloader._xscale = 0;
preloader._visible = true;
}
Zatim mozes imati i error tekst koji ces prikazati umjesto slike ako ucitivanje iz nekog razloga ne uspije. Za to ces morati definirati onLoadError listener funkciju na slikaLoaderListeneru... itd.
Onda naravno mozes recimo risajzati sliku kad se ucita, ufejdati je pomocu neke svoje custom funkcije pojaviSe() koju ces pozvati unutar onLoadInit funkcije, ili postepeno fejd outati preloader umjesto da ga samo ucinis nevidljivim kad vise nije potreban, pozivajuci svoju nestani() funkciju unutar onLoadInit event listenera... itd, što god ti padne napamet...
Ovo su ti samo smjernice kako mozes poslije razvijati loadanje svojih slika. Ne znam koliko je tvoje znanje actionscripta pa se nadam da ti jasno o cemu govorim, a za podrobnija objasnjenja nije bas da previse vremena.
U svakom slucaju ako imas pitanja u vezi primjera prikazanog dolje slobodno pitaj.

//potrebni su ti:
//-otvoren novi prazan .fla u tvom fleshu sa tri lejera
//- jedan prazan mc nazvan slikaHolder u najdonjem lejeru
//- na lejeru iznad slikaHoldera mc nazvan preloader koji jepolozeni izduzeni pravokutnik
//- pravilan path do slike koju ces loadati kad pozoves loadClip() (na dnu koda)
//-zlica vegete

//pejstaj ovaj kod u prvi frejm na najgornjem lejeru, promijesaj i probaj Ctrl+Enter


// početne postavke

preloader._xscale = 0; //resetiraj preloader
preloader._visible = false; //sakrij preloader


// napravi MovieClipLoader i definiraj listener funkcije
var slikaLoader = new MovieClipLoader();
var slikaLoaderListener = new Object();
slikaLoader.addListener(slikaLoaderListener);

//ova listener funkcija je pozvana samo jednom, kad ucitavanje pocne
slikaLoaderListener.onLoadStart = function(mc){
preloader._xscale = 0; //resetiraj preloader
preloader._visible = true; //učini ga vidljivim
}

//ova listener funkcija je pozvana svaki put kad se ucita dio podataka na hard
//ona animira tvoj preloader

slikaLoaderListener.onLoadProgress = function(mc, loaded, total){
var postotak = Math.ceil(loaded/total*100); //cuva iznos postotka ucitanih podataka
preloader._xscale = postotak;
}

//ova listener funkcija je pozvana kad je slika/swf ucitana i inicirana
//tad su ti dostupni propertiji tvoje slike pa se tad mozes njima posluziti
//da risajzas sliku prije nego je prikazana ili napravis s njom sto vec zelis
//u ovom jednostavnom primjeru sluzi samo da ucinis preloader nevidljivim jer ti vise ne treba

slikaLoaderListener.onLoadInit = function(mc){
preloader._visible = false;
}

//pozovi loadClip() da ucitas sliku u zeljeni mc
//parametri su: 1. path do tvoje slike ("tvojPath/01.jpg") i 2.referenca na mc u koji zelis ucitati sliku (slikaHolder)
//funkciju pozovi onda ti je to potrebno, na pritisak gumba ili kako si vec zamislio

slikaLoader.loadClip("tvojPath/01.jpg", slikaHolder);

samo ideja - a da ovo malo uredis i bacis u tutorial?

_________________
Bolje biti malo lud, nego malo pametan.
Back to top
View user's profile Send private message Visit poster's website
cilic



Joined: 29 Oct 2005
Posts: 20
Location: zagreb

PostPosted: 19.11.2006 18:30    Post subject: Add user to your forum ignore list Reply with quote

hvala ti puno na ovom iznimno detaljnom objasnjenju...
trenutno nisam doma pa cu to isprobati ovih dana...
bilo kako bilo javim se ak cu imati problema...

hvala ti puno na danom znanju...

pozdrav
Back to top
View user's profile Send private message Send e-mail
luksy



Joined: 28 Oct 2003
Posts: 440
Location: zaprešić, croatia/brežice, ljubljana, slovenia

PostPosted: 19.11.2006 18:52    Post subject: Add user to your forum ignore list Reply with quote

svaka čast na detaljnom objašnjenju i trudu!
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.    mi3dot.org Forum Index -> Flash All times are GMT + 1 Hour
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group