View previous topic :: View next topic |
Author |
Message |
nemogirl
Joined: 27 Oct 2004 Posts: 386 Location: istra
|
Posted: 08.11.2006 22:23 Post subject: flash: kako disejblati sve mc-ijeve unutar odredjenog mc-ija |
|
|
pitanje iz naslova!
imam jedan mc unutar kojeg loadam puno mc-ija koji imaju svoje onPress i slicne funkcije.
e sad - ja zelim u odredjenom trenutku disejblat sve mc-ijeve unutar tog mc-ija... a nekako zelim izbjec petlje...
da li postoji drugi nacin??
naravno da sam probala:
mc_holder.enabled = false;
(mc_holder je mc di su svi ti mc-ijevi...)
help anyone |
|
|
Back to top |
|
|
nme
Joined: 17 Sep 2003 Posts: 53 Location: Zagreb - Rijeka
|
Posted: 09.11.2006 01:03 Post subject: |
|
|
probaj im visibility definirati varijablom koja, ukoliko false ih mice sa scene, a kontrolirana glavnom funkcijom koja ih namjerava maknuti ...
(nadam se da razumijes) |
|
|
Back to top |
|
|
nemogirl
Joined: 27 Oct 2004 Posts: 386 Location: istra
|
Posted: 09.11.2006 17:36 Post subject: |
|
|
nisam sigurna da sam skuzila...
ali ja ih ne zelim maknuti sa scene! znaci visibility ne diram. samo ne zelim da vise imaju bilo kakve "on" funkcije aktivne.
a to zelim iz jednostavnog razloga sto mi se pojavljuje objekt iznad tih mc-ijeva i ne zelim da mi se pojavljuje kursor "rucica" na nekim nepotrebnim mjestima iznad tog objekta...
nadam se da sam i ja jasna.... |
|
|
Back to top |
|
|
astolitu
Joined: 26 Jun 2004 Posts: 547 Location: Zagreb
|
Posted: 09.11.2006 17:46 Post subject: |
|
|
zasto zelis izbjec petlju?
moras te mc-ijeve nekako prebrojit i kad ih prebrojis prosljedjujes im naredbu
a mozes ti pisat za svaki posebno ako ti je tako draze-ali to nije neka baza
npr:
mc_holder.mc0.enabled = false;//i tako dalje sve do zadnjeg
zar nije lakse napravit petlju
Ako bi imala recimo 500 tih mc-ijeva sta onda? pisala za svakog posebno? |
_________________ http://www.markobjedov.com/ |
|
Back to top |
|
|
nemogirl
Joined: 27 Oct 2004 Posts: 386 Location: istra
|
Posted: 09.11.2006 18:08 Post subject: |
|
|
zelim izbjec petlju ako mogu! jer vec imam dosta "petljanja" pa se bojim da ce mi to sve ici sporo jednom kad bude jos tih 500 mc-ijeva... jer cu jos morat povjeravat koji su loadani a koji ne.
a jedan po jedan ne dolazi u obzir
samo sam se pitala da li mozad postoji neki drugi nacin, nesto kao
mc_holder.Children.enabled = false;
gdje bi to children oznacavalo sve mc-ije unutar mc_holdera - i onda ubijem sve muhe jednim potezom!
kao "children" suprotno od "parent" |
|
|
Back to top |
|
|
astolitu
Joined: 26 Jun 2004 Posts: 547 Location: Zagreb
|
|
Back to top |
|
|
nemogirl
Joined: 27 Oct 2004 Posts: 386 Location: istra
|
Posted: 09.11.2006 18:33 Post subject: |
|
|
evo, skoro pa uspjela ...
kad mi se pojavi taj objekt, stavim jednu "on" funkciju na mc_holder i ona automatski ubije sve "on" funkcije mc-ijeva koje sadrzi - po toj nekoj flash logici rada.
_root.mc_holder.onRollOver = function(){
this.useHandCursor = false;
}
ali kad ubijem taj objekt - ja zelim opet sve po staro. tj. da se vrate sve te "on" funckije unutarnjih mc-ijeva.
probala sam disejblat taj holder, nadajuci se da ce to vratiti sve na staro - ali ne....
ostala na pola rjesenja....
Last edited by nemogirl on 09.11.2006 18:34; edited 1 time in total |
|
|
Back to top |
|
|
nme
Joined: 17 Sep 2003 Posts: 53 Location: Zagreb - Rijeka
|
Posted: 09.11.2006 18:33 Post subject: |
|
|
sorry, ne znam da li sam uopce shvatio, ali ovo sto pokusavas ne postoji, barem ne na taj nacin ...
Moras napraviti on funkciju koja ce ih prebrojavati ili napravi array/vise arraya, ili ne znam, nije mi skroz jasno sto zelis postici ... postavi temp swf negdje da vidimo .. |
|
|
Back to top |
|
|
Ivan Podrug - e1
Joined: 15 Apr 2005 Posts: 316 Location: Solin
|
Posted: 10.11.2006 11:29 Post subject: |
|
|
problem nisu petlje. A ako ih ima baš previše, možda ne programiraš kako treba.
Pogledaj u Flash helpu for...in petlju. Imaš jedan primjer unutra baš za to što tebi treba. |
|
|
Back to top |
|
|
dblchckd
Joined: 02 Apr 2006 Posts: 106
|
Posted: 10.11.2006 13:14 Post subject: |
|
|
nemogirl wrote: | evo, skoro pa uspjela ...
kad mi se pojavi taj objekt, stavim jednu "on" funkciju na mc_holder i ona automatski ubije sve "on" funkcije mc-ijeva koje sadrzi - po toj nekoj flash logici rada.
_root.mc_holder.onRollOver = function(){
this.useHandCursor = false;
}
ali kad ubijem taj objekt - ja zelim opet sve po staro. tj. da se vrate sve te "on" funckije unutarnjih mc-ijeva.
probala sam disejblat taj holder, nadajuci se da ce to vratiti sve na staro - ali ne....
ostala na pola rjesenja.... |
Evo ti druga polovica rjesenja:
Umjesto da disejblas button ponasanje holdera unisti njegovu onRollOver methodu! Jer dok god je bilo koja od button metoda definirana, pa makar movieClip button bio disejblan, njegovo button ponasanje overrajda button ponasanje buttona ispod ili u njemu. Znaci kad zelis opet vratiti sve na staro, tj aktivirati natrag svoj mcijeve u stanje u kojem su bili, u ovom tvom primjeru, napravi sljedece: Code: | delete _root.mc_holder.onRollOver |
Ima jos jedno rjesenje koje ja nekad koristim kad zelim iskljuciti sve movie clipove i poslije ih ponovo vratiti u stanje u kojem su bili:
Umjesto da sve stavljam u holder kao u tvom primjeru, ja preko cijelog sadrzaja, na najvisi lejer, stavim veliki mc velicine stagea (nacrtam obicni kvadrat), postavim properti _alpha na 0, definiram mu neku praznu button metodu, recimo onRelease, propertiju enabled postavim vrijednost false, i onda "aktiviram" ili "deaktiviram" taj button postavljanjem propertija _visible na true ili false. Vrlo prakticno i jednostavno (dajem dolje primjer). Znaci kad je _visible bilo true bilo false ti ne vidis taj button (zbog _alpha = 0; ) a mjenja se samo to sto na _visible = true taj button_mc overajda sva button ponasanja mcijeva ispod a kod _visible = false ne. U svakom slucaju puno prakticnije od koristenja petlji osobito kad imas komplicirane scenarije s mnogo mcijeva s razlicitim postavkama propertija koje poslije moras vracati "na staro"... ovo je mnogo elegantnije rjesenje. Code: | //button_mc je movieClip velicine stagea
button_mc._alpha = 0;
button_mc.onRelease = null;
button_mc.enabled = false;
button_mc._visible = true; // kad zelis da disejbla sve buttone ispod
button_mc._visible = false: // kad zelis da ne radi nista |
Last edited by dblchckd on 10.11.2006 17:05; edited 1 time in total |
|
|
Back to top |
|
|
nemogirl
Joined: 27 Oct 2004 Posts: 386 Location: istra
|
Posted: 10.11.2006 16:23 Post subject: |
|
|
@dblchckd: ljubim te posred cela!!!
konacno da je netko shvatio sto zelim!! i onda jos mi dao drugu polovicu rjesenja... HVALA!
puno si mi olaksao...
a bila sam tako blizu rjesenja, ha! ja sam probala taj onRollOver stavit u funkciju i onda kasnije pokusala obrisat tu funkciju sa delete.. al nije radilo!
nisam znala da se moze tako obrisat sama onRollOver funkcija! to je super i mrak. sad ce mi bit lakse sve!
jos jednom thnx...
ovo tvoje drugo rjesenje jos moram isprobat ali isto zvuci okej
|
|
|
Back to top |
|
|
dblchckd
Joined: 02 Apr 2006 Posts: 106
|
Posted: 10.11.2006 17:23 Post subject: |
|
|
nemogirl wrote: | @dblchckd: ljubim te posred cela!!!
konacno da je netko shvatio sto zelim!! i onda jos mi dao drugu polovicu rjesenja... HVALA!
puno si mi olaksao...
a bila sam tako blizu rjesenja, ha! ja sam probala taj onRollOver stavit u funkciju i onda kasnije pokusala obrisat tu funkciju sa delete.. al nije radilo!
nisam znala da se moze tako obrisat sama onRollOver funkcija! to je super i mrak. sad ce mi bit lakse sve!
jos jednom thnx...
ovo tvoje drugo rjesenje jos moram isprobat ali isto zvuci okej
|
hvala na poljupcu ... drago mi je da je pomoglo
Da bila si blizu.
Ovo dugo rjesenje bi ti mozda bilo bolje utoliko sto ne moras nestnuti sve muvi klipove u holder ako ti to vec nije nuzno iz nekog razloga (zelis ih sve skupa micati ili dilitnuti ili stajaznam...) |
|
|
Back to top |
|
|
|