Ciao
Bisogna utilizare l' evento Event.ADDED nella funzione costruttrice della DC dell' SWF che viene caricato.
Ti allego un esempio:
Dato che il from a to web è passato, almeno l'edizione romana, vorrei approfondire con chi è stato la il discorso che in un progetto flash as3 possiamo avere più swf con document class proprie e non come si diceva recentemente...
Chiedo aiuto a chi è stato a roma perchè ci informi tutti a riguardo...
Grazie....
Ciao
Bisogna utilizare l' evento Event.ADDED nella funzione costruttrice della DC dell' SWF che viene caricato.
Ti allego un esempio:
Last edited by Flep; 13-05-08 at 18:13.
In sostanza:
ho main.fla che ha come DC Main.as ed ho external.fla che ha come DC External.as
Main.as
External.asCode:package { import flash.display.MovieClip; import flash.display.Loader; import flash.events.Event; import flash.net.URLRequest; public class Main extends MovieClip { private var loader:Loader; public function Main() { loadSWF(); } private function loadSWF():void { var swf:URLRequest=new URLRequest(); swf.url='external.swf'; loader=new Loader(); loader.contentLoaderInfo.addEventListener(Event.COMPLETE,done); loader.load(swf); } private function done(evt:Event):void { addChild(loader); } } }
Code:package { import flash.display.MovieClip; import flash.events.Event; public class External extends MovieClip { public function External() { addEventListener(Event.ADDED,init); } private function init(evt:Event):void { removeEventListener(Event.ADDED,init); clip_mc.addEventListener(Event.ENTER_FRAME,go); } private function go(evt:Event):void { evt.target.rotation++; } } }
Meglio ancora se si usa l' evento Event.ADDED_TO_STAGE, in quanto ti permette di raggiungere tranquillamente la timeline dell' SWF principale e quindi ogni sua MovieClip annessa.
Allego esempio 2:
Last edited by Flep; 13-05-08 at 18:14.
a me non va..
provo a leggere un swf compilato che ha un metodo initStage
e non lo becca..
l'errore e'
TypeError: Error #1009: Impossibile accedere a una proprietà o a un metodo di un riferimento oggetto null.
at External/initStage()
at External$iinit()
ho provato sia con, nella main
l'errore e' acces of undefined propriety riferendosi agli oggetti istanziati sullo stageCode:addChild(loader); var t : External= new External(); iContent.addChild(t);
in compilazione
che con
qui l'errore e' ovviamente che this non viene considerata una variabile con le normali regole di assegnamento ma un referenceCode:var r :External= new External(); this = r;
ma non va.. nel primo caso e nel caso "da manuale" copiato dai post precedenti
Devi usare ADDED_TO_STAGE nella DC dell' SWF che carichi.
si lo faccio..
Allega i files please![]()
il problema e' che da dentro uno degli swf che carico chiamo lo stage cosi:
iTextInputUser.txt.restrict = "a-zA-Z0-9";
stage.focus = iTextInputUser.txt;
ovviamente debuggando stage e' null..
mi sto rileggendo tutti i post/tutorial per capire un po' come raccapezzarmi
(da quanto ho visto in qualche esempio) non è che forse devi aggiungere parent ?
Bookmarks