| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Feb 2010
Beiträge: 11
| Externes SWF laden und auf MC's zugreifen
Guten Tag allerseits!! Bin neu hier und brauch keine kleine Hilfe. Folgendes: Ich habe ein kleines Flash gebaut was zunächst einfach nur Bilder „eintweent“. Damit der erste SWF nicht zu gross wird möchte ich nachher einen „SWFcontainer“ nachladen wo dann noch mehr Bilder drin sind und diese dann ebenso im „MainSWF“ im laufende Tween mit einbauen bzw. die Bilder die im MainSWF sind mit den Bilder aus dem nachgeladenem „SWFcontainer“ ergänzen! So weit so gut!! Nun ich habe einen SWFcontainer gebaut und dort wie im MainSWF Bilder bereit gestellt. Zum test einfach einen simples Rechteck mal dazu. Zum einen werden die Bilder nicht „gemocht“ als auch der simple Zugriff auf das bescheidene Rechteck wie z.B: mytestMC.alpha = 0.5; wird immer mit der Fehlermeldung quittiert: TypeError: Error #1009: Der Zugriff auf eine Eigenschaft oder eine Methode eines null-Objektverweises ist nicht möglich. Wieso NULL Objekt! Wenn ich das direkt im SWFcontainer mache fluppt das!! Sprich um ein MC oder ein Bild aus dem nachgeladenem „SWFcontainer“ anzusprechen was stimmt da nicht oder was fehlt dort noch. Hilfffffffeeeeee biiiiitttteeee! Gruss Eine AS3 Novize!! -------------------------------------------------- import fl.transitions.Tween; import fl.transitions.easing.*; import fl.transitions.TweenEvent; function run_loop(){ var _swfLoader:Loader; var _swfContent:MovieClip; loadSWF("contain2.swf"); function loadSWF(path:String):void { var _req:URLRequest = new URLRequest(); _req.url = path; _swfLoader = new Loader(); _swfLoader.contentLoaderInfo.addEventListener(Even t.INIT, addSWF); _swfLoader.load(_req);} function addSWF(event:Event):void { event.target.removeEventListener(Event.INIT, addSWF); _swfContent = event.target.content; addChild(_swfContent); } var n:int =5; var i:Number = 1+ Math.floor(Math.random()*n); var runnum; switch(i) { case 1: runnum= SWFcontainer.BannerBild; // der versuchte Zugriff auf den externen SWFcontainer break; case 2: runnum=pic_mc02; break; case 3: runnum=pic_mc03; break; default: runnum=pic_mc04; } var myImage:BitmapData = new runnum(1, 1); var bitmap:Bitmap = new Bitmap(myImage) bitmap.alpha =0; bitmap.x =0; bitmap.y =0; addChild(bitmap); var my_tween:Tween = new Tween(runnum, "alpha", Strong.easeIn, 1, 0, 3, true); my_tween.addEventListener(TweenEvent.MOTION_FINISH , nachoben); function nachoben(){ run_loop();}} run_loop() |
| | |
| | #2 (permalink) |
| ░▒░▒░▒░▒░▒ Registriert seit: Oct 2007 Ort: L.E.
Beiträge: 129
|
Hallo müsste nicht der Complete Event dispatched werden. Evtl. ist die SWF bei INIT noch nicht geladen. Code: loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete); Code: var _bannerBild:*=_swfContent.getChildByName("BannerBild");
__________________ scio nescio |
| | |
| | #3 (permalink) | |
| Neuer User Registriert seit: Feb 2010
Beiträge: 11
| Zitat:
TypeError: Error #1007: Versuchte Instanziierung für einen Nicht-Konstruktor. at NewTaBanner05_externSWF_1_fla:MainTimeline/run_loop/NewTaBanner05_externSWF_1_fla:addSWF()[NewTaBanner05_externSWF_1_fla.MainTimeline::frame1 :85] Gruss | |
| | |
| | #4 (permalink) |
| ░▒░▒░▒░▒░▒ Registriert seit: Oct 2007 Ort: L.E.
Beiträge: 129
|
Ich werd nicht ganz schlau aus deinem Code. Wo wird denn der "SWFContainer" definiert? Was mir am Anfang von AS3 immer sehr geholfen hat, um die DisplayList zu verstehen war http://livedocs.adobe.com/flash/9.0_...=00000149.html da gibts ein Script traceDisplayList(), das traced dir rekursiv alle DisplayObjecte und müsste dir auch dann die Inhalte und deren Benamung in der geladenen Swf auspucken. Das geht für einzelne Container, aber auch für "this".
__________________ scio nescio Geändert von slowkey (07-02-2010 um 11:03 Uhr) |
| | |
| | #5 (permalink) | |
| Neuer User Registriert seit: Feb 2010
Beiträge: 11
| Externe Bilder aus SWF-Container laden!? Zitat:
Ich habe ein Bild mit gesendet um zu verdeutlichen wie meiner Bilder im externen Container, den ich nachher dazu lade, vorliegen. Ich habe vorher ein Script gebaut wo die Bilder kurz hintereinander extern geladen wurden. Das führte dazu das sich der SWF nach einiger Zeit aufgehängt hat. Wenn ich nun die Bilder so dem „Tween“ zu zufüttere wie der Code es nun macht dann ist alles IO! Das sich mein vorheriges Script nicht bewährt hat liegt sicherlich an meinem Unvermögen. Wie dem auch sei! Der Zugriff auf eine Image-Datei, so wie es nun wie im Bild zeige, das in einem externen SWF vorliegt das ich ohne Fehler laden kann! Wie lässt sich dieses z.B. „banner3“ und weitere andere in den laufenden Tween übergeben?? Gruss und Danke!! | |
| | |
| | #6 (permalink) |
| ░▒░▒░▒░▒░▒ Registriert seit: Oct 2007 Ort: L.E.
Beiträge: 129
|
Ah sorry hab jetzt dein Bild gesehen. um das bild aus der lib anzusprechen musst du erst die Klasse mit getDefinitonByName() bekommen http://www.adobe.com/livedocs/flash/...initionByName() Was willst du denn Umsetzen eine Slideshow o. ä.? Da wäre es aber einfacher eine xml zu laden mit den Pfaden der Bilder und die Bilder dann einzeln zu laden. Oder du machst in deinem Film auf jeden Keyframe ein Bild und hüpft dann dahin.
__________________ scio nescio Geändert von slowkey (07-02-2010 um 12:46 Uhr) |
| | |
| | #7 (permalink) | |
| Neuer User Registriert seit: Feb 2010
Beiträge: 11
| Zitat:
Gruss und Danke | |
| | |
| | #8 (permalink) |
| ░▒░▒░▒░▒░▒ Registriert seit: Oct 2007 Ort: L.E.
Beiträge: 129
|
du wirst ein problem mit deiner Garbage Collection haben gskinner.com: gBlog: AS3: Resource Management pt 2
__________________ scio nescio |
| | |
| | #9 (permalink) |
| Perverted Hermit Registriert seit: Mar 2004 Ort: Delmenhorst
Beiträge: 12.139
| Wow... das ist mal ein Anspruch an die Arbeit anderer... ich bin beeindruckt!
__________________ http://icodeapps.net | Meet me at the Flex user group Hamburg talking about CoffeeScript |
| | |
| | #10 (permalink) | |
| Neuer User Registriert seit: Feb 2010
Beiträge: 11
| Kein Lösung in Sicht Zitat:
Irgendwie ist der Wurm in Flash reingekommen oder der Aufwand wird nun so gross, für ein wenig Animation... Ich bleibe am Ball, wenn das Problem so nicht zu lösen ist dann muss ein Umweg herhalten! Gruss und noch mal ein Danke für die Hilfe. | |
| | |
| | #12 (permalink) |
| ░▒░▒░▒░▒░▒ Registriert seit: Oct 2007 Ort: L.E.
Beiträge: 129
|
mach ma langsam! ich hab auch mit Lingo programmieren gelernt und um auf meinem jetzigen Wissenstand zu kommen einige Nächte durchgemacht und an Problemen gegrübelt. Aber bevor ich andere im Flashforum um Hilfe bitte, schöpfe ich die Möglichkeiten einer Recherche im Netz, in der F1 Hilfe und der Actionscript Referenz aus. Das Internet ist selbstreflexiv, d.h. alles was du fürs Netz machen kannst, steht auch dort irgendwo dokumentiert. Du kannst nicht vom Forum erwarten, dass es dir die Lösung auf einem silbernen Tablet liefert. Und wenn dir AS3 zu hoch ist, dann lass es doch einfach.
__________________ scio nescio Geändert von slowkey (08-02-2010 um 12:52 Uhr) |
| | |
| | #13 (permalink) |
| ░▒░▒░▒░▒░▒ Registriert seit: Oct 2007 Ort: L.E.
Beiträge: 129
|
Aber kurz noch zu deinem Problem, das Aufhängen wird an der garbage collection und am fl.transitions.Tween, da gibts einige Artikel im Netz bestimmt auch im Forum. Nimm ne andere Tweenengine, TweenLite oder Caurina, damit wird sich wahrscheinlich das Aufhäng Problem erledigt haben.
__________________ scio nescio Geändert von slowkey (08-02-2010 um 12:51 Uhr) |
| | |
| | #14 (permalink) | |
| Neuer User Registriert seit: Feb 2010
Beiträge: 11
| Zitat:
| |
| | |
| | #15 (permalink) |
| ░▒░▒░▒░▒░▒ Registriert seit: Oct 2007 Ort: L.E.
Beiträge: 129
|
Ist schon klar grosses Paket. Du lädts beim Start in einer Schleife alle Bilder aus der XML und speicherst die in einem Array oder Object. Das müsste bei unkommprimierten Bildern in der swf, genauso viel kb sein, die du lädts. Aus dem Arry kannst du dann beliebig auf die Stage oder in deinen Container addChild oder removeChild machen. Die xml hat den Vorteil, dass du nicht immer deine Libary aus dem Flash kompiliern musst, sondern kannst den Pfad eines anderen Bildes einsetzen oder ändern. Das ist eigentlich so usus, wenn du nur bilder laden willst.
__________________ scio nescio Geändert von slowkey (08-02-2010 um 13:34 Uhr) |
| | |
![]() |
| Lesezeichen |
| Stichworte |
| extern, nachladen, swf, zugeifen, zugriff |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Aus Flash auf externes PHP zugreifen | Elo | ActionScript 2 | 2 | 11-04-2008 16:57 |
| auf Variablen und Eigenschaften von MC's zugreifen | Skydiver2607 | Flash MX | 12 | 29-06-2007 15:58 |
| auf mc's in anderen Bildern zugreifen | commanderX66 | Flash 4 und Flash 5 | 2 | 22-09-2005 09:13 |
| Wie externes JPG Laden und externe TXT laden?? | Neobase | Flash MX | 1 | 29-04-2004 10:10 |
| Externes MPG Laden??? | Markus4711 | Flash MX | 6 | 02-12-2003 12:04 |