Autor | Zpráva | ||
---|---|---|---|
Screed Profil * |
#1 · Zasláno: 30. 9. 2007, 21:53:33
Dobrý den, mám zde problém v souboru Visual.as mám následující kód :
class Visual {spouštím ho ze souboru tímto var vis:Visual = new Visual(); Když chci zjisti visual_mc[name]._xnebo _root.name2._x; tak mně to vypíše "undefined". Prosím porad'te, děkuji. |
||
embee Profil |
#2 · Zasláno: 2. 10. 2007, 03:37:31
a trace(visual_mc[name]) ti vyhodi co? Jestli undefined tak se ti ten MC ani neattachuje (coz bych mozna rekl i tak). Kazdopadne zkus misto prime adresace pouzit reference, je to rozhodne spolehlivejsi (aspon mne se to osvedcilo). Takze misto
visual_mc.attachMovie(name,name,depth); zkus dat var ref:MovieClip = visual_mc.attachMovie(name,name,depth); a pak se odkazuj jako ref._x=_root.name2._x; Netusim nakolik je toto reseni vhodne, ale myslim, ze by to mohlo zafungovat. embee |
||
XXX Profil |
#3 · Zasláno: 2. 10. 2007, 21:45:02
embee
<OT>Nemusis se podepisovat, my prece vidime, ze je to od tebe ;) :))))</OT> |
||
embee Profil |
#4 · Zasláno: 3. 10. 2007, 02:50:52
XXX
<OT>ja vim ze vite, jenom to poatri k tradici podpisu pod mym starym nickem... a vubec neprud jako, porad jsme nebyli na tom pifku :D</OT> |
||
Časová prodleva: 4 dny
|
|||
Screed Profil * |
#5 · Zasláno: 6. 10. 2007, 17:37:29
Děkuji za pomoc, vyřešil jsem to pomocí _root.visual_mc.attachMovie(name,name,depth);
|
||
Screed Profil * |
#6 · Zasláno: 6. 10. 2007, 17:50:23
Bohužel tu ještě přetrvává probém s _root.name2._x nepomáhá ani reference pomocí ref. Vypisuje pořád undefined.
|
||
Screed Profil * |
#7 · Zasláno: 7. 10. 2007, 12:18:59
Asi se pomoci _root.name2._x odkazuju na String ne na MovieClip. Potreboval bych to nejak zmenit.
|
||
embee Profil |
#8 · Zasláno: 8. 10. 2007, 13:15:57
Screed
ja jsem totiz uplnej mimon. Samozrejme ze ti to dava undefined, protoze kdyz das do funkce: var ref=..... tak tato promenna je lokalni a bude existovat jen uvnitr funkce. Musis promennou deklarovat mimo funkci (tam kde mas ostatni promenne) a pak ji priradit hodnotu. Pokud ti to ani takhle nefunguje, tak mas urcite spatne attachMovie, protoze pokud udelas: ref = this.attachMovie.... trace(ref) tak ti pri attachovani klipu na 100% musi vytracovat movie clip. |
||
Screed Profil * |
#9 · Zasláno: 9. 10. 2007, 21:26:48
embee
class Visual { embee, děkuji za spolupráci :) Sice pořád nechápu, proč _root.ref._x vrací undefinide a proč ref._x funguje. |
||
embee Profil |
#10 · Zasláno: 10. 10. 2007, 11:45:09
var name="arrow" + depth;
var ref = eval("ball" + depth); - zkus vypustit var. Nechapu osobne proc ho tam mas, kdyz uz obe promenne mas deklarovane mimo funnkci. Tim slovickem var uvnitr funkce prepises assignment a s tech promennych se stanou opet lokalni. Rekl bych ze prave kvuli tomu ti nefunguje _root, ale to neni na skodu, ptze _root je pekna prasarna. Ja osobne to nepouzivam radsi vubec a ani se to vseobecne nedoporucuje. |
||
Screed Profil * |
#11 · Zasláno: 11. 10. 2007, 20:59:24
Čím bych se měl tedy odkazovat když né pomocí _root. ?
|
||
embee Profil |
#12 · Zasláno: 11. 10. 2007, 21:15:46
Screed
bud pouzij this. a nebo nic... porad lepsi nez root, ptze to dela borcus kdyz nacitas externe.. no ono to dela borcus skoro porad, melo by se to pouzivat zcela vyjimecne |
||
Screed Profil * |
#13 · Zasláno: 12. 10. 2007, 13:26:02
embee
Byl by jsi tak hodnej a prepsal mi ten muj kod pomoci this. nebo aspon nejakou cast, protoze kdyz jsem pouzil this. tak mne to hodilo chybu. děkuji :-) |
||
embee Profil |
#14 · Zasláno: 12. 10. 2007, 15:40:52
Screed
jakou ti to hodilo chybu? |
||
Screed Profil * |
#15 · Zasláno: 13. 10. 2007, 16:05:06
embee
Zadnou chybu mne to nehodilo, funguje to v poradku, jen bych chtel vedet, jak bych se mohl zbavit toho _root pomoci this. |
||
embee Profil |
#16 · Zasláno: 13. 10. 2007, 19:07:37
Screed
"...protoze kdyz jsem pouzil this. tak mne to hodilo chybu..." - tohle me zajima ;) |
||
Screed Profil * |
#17 · Zasláno: 13. 10. 2007, 19:46:16
aha.. :D ..There is no method with the name 'createEmptyMovieClip'.
|
||
Screed Profil * |
#18 · Zasláno: 13. 10. 2007, 19:46:50
this.createEmptyMovieClip("visual_mc",depth);
|
||
Časová prodleva: 4 dny
|
|||
embee Profil |
#19 · Zasláno: 18. 10. 2007, 01:23:14
zkus prepsat class Visual na class Visual extends MovieClip
- doslo mi ze tak, jak to mas napsane, to this nemuze fungovat. Jednoduse proto, protoze this. oznacuje instanci tridy a ne casovou osu, tudiz volas neexostujici metodu. Tim, ze tridu vytvoris rozsirenim MovieClipu, tak tato trida zdedi vsechny metody tridy MovieClip, tudiz i createEmptyMovieClip. Nicmene problem je v tom, ze se takto vytvorene MC budou pripojene k teto tride, tudiz kdyz smazes jeji instanci, MC se smazou taky. Akorat stejne nevim jestli to bude fungovat jako celek, ale minimalne by to melo odstranit tento problem. |
||
Časová prodleva: 17 let
|
0