Autor | Zpráva | ||
---|---|---|---|
Fusion2222 Profil * |
#1 · Zasláno: 18. 4. 2010, 17:30:35
zdravim chtěl bych se zeptat jestli by mi nekdo neporadil nakej článek, který by mi trošku více ujasnil listenery a jak se konkrétně dají použít, zatim pracuju v AS2, ono většina článkú je jenom tak okrajove spomene a dal se jim nevenuje. Ono dost by mi aj pomohli aspoň vzorové využití listeneru když už nic jinýho.
|
||
FlashManiac Profil |
#2 · Zasláno: 19. 4. 2010, 08:46:42
velice dobře se to vysvětluje na lsitenerech pro načítání externích klipů.. fouknu ti sem příklad s poznámkama:
var loaderObr:MovieClipLoader=new MovieClipLoader(); var naslouchacObr:Object=new Object(); //nejprve nadefinujeme promennou loaderu a promennou listeneru naslouchacObr.onLoadComplete=function(clip_mc:MovieClip):Void{ var ret:String; var cis:Number=clip_mc._name.indexOf('_'); ret=clip_mc._name.substring(3,cis); clip_mc.cislo=Number(ret); //priradi MC identifikacni cislo //vycucne z nazvu MC cislo, ktere pak priradi //nadefinovali jsme si funkci co nám priradi promennou nacitanemu MC } naslouchacObr.onLoadInit=function(clip_mc:MovieClip):Void{ clip_mc._x=clip_mc.cislo*10; clip_mc._y=clip_mc.cislo*10; //nadefinovali jsme si dalsi funkci, ktera po prvnim zobrazeni umisti nacitany clip na dane misto } function vytvorObrazky():Void{ for(var i:Number=0;i<pole.length;i++){ this.createEmptyMovieClip('obr'+i+'_mc',20+i); loaderObr.loadClip(pole[i],'obr'+i+'_mc'); }//fce ktera nacte do vytvorenych MC pozdovane obrazky, v promenne POLE mame na jednotlivych prvcich adresu nacitanych obrazku } loaderObr.addListener(naslouchacObr); //nyni priradime objekt listeneru nasemu loaderu, pak bude možno zachytavat udalosti loaderu vytvorObrazky(); //funkce ktera nam spusti vlastni nacitani do loaderu kdyztak si spust help flashe tam je tech prikladu daleko vic a myslim ze to je z toho vcelku pekne pochopitelne |
||
Časová prodleva: 5 dní
|
|||
Fusion2222 Profil * |
#3 · Zasláno: 24. 4. 2010, 19:00:10
aha, asi tomu uz rozumim, akorat sem se dostal na podobny tutorial ktery je podobne vysvetluje, ale dik moc pomohlo mi to. ono jeste bych mel dotaz, proc funkce "voidujes" ma to naky smysl? pokud vim, void znamena ze funkce nebude mit zadny vystup.
|
||
DoubleThink Profil * |
#4 · Zasláno: 24. 4. 2010, 19:21:24
|
||
FlashManiac Profil |
#5 · Zasláno: 26. 4. 2010, 08:28:24
Fusion2222:
to je jen kvůli zjednodušení pro překladač, je lépe všech striktně typovat, pro rychlejší provádění kódu a lepsi debugging |
||
Časová prodleva: 4 dny
|
|||
Fusion2222 Profil * |
#6 · Zasláno: 29. 4. 2010, 22:59:44
aha.. to by vysvetlovalo proc zlozitejsi kody maji i napr striktne zadefinovany promenne ( promenna:Number) a pod. Dik moc za tvou odpoved
no pokracoval jsem s nacitanim externich obrazku a klipu pres listenery a skvele mi to slo. ted se zabyvam spise nacitanim zvuku a napsal jsem: on (press) { pisnicka = new Sound(); pan_poslouchac = new Object(); pisnicka.loadSound("autumn_leaves.mp3",true); pisnicka.addListener(pan_poslouchac); pan_poslouchac.onLoadComplete = function () { textove_pole=pisnicka.duration; } } no muj cil byl takovy ze kdyz stlacim tlacitko ak se nacita externi mp3 a nasledne zacne hrat.. hned jak se mp3 nacte tak v textovem poli (krere ma promennou textove_pole) se zobrazi rozsah nactene mp3. Ono postupoval jsem podobne jak v pripade kdyz bylo potreba nacitani externich obrazku nebo klipu, avsak s tim rozdilem ze ted listener nefunguje. mohl bys mi pls rict co je konkretne na tom spatne? podle toho jak jsem to pochopil by to melo fungovat ale nefunguje:F |
||
FlashManiac Profil |
#7 · Zasláno: 30. 4. 2010, 08:46:01 · Upravil/a: FlashManiac
Fusion2222:
no jde o to ze událost zvuku nemá událost onLoadComplete ale jen onLoad :) a nemusíš to aplikovat na obecný objekt ale lze to aplikovat přímo na objekt zvuku: var zvuk:Sound=new Sound(); zvuk.onLoad=function(s:Boolean):Void{ if(s){ zvuk.setVolume(100); zvuk.start(0,0); }else{ trace('zvuk nenacten'); } } zvuk.loadSound(adresa_ k_TvemuZvuku,false); stačí si projít help flashe a z tech příkladů co tam jsou si všechno(nebo skoro všechno) odvodíš :) |
||
Časová prodleva: 14 let
|
0