Zurück   Flashforum > Flash > ActionScript > ActionScript 3

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 21-09-2009, 13:27   #1 (permalink)
Neuer User
 
Registriert seit: Jul 2009
Beiträge: 152
Post ActionScript Interne SWF auf Parent zugreifen

ich habe folgendes Problem.

Ich habe mit hilfe des Loaders eine externe swf (ext.swf) geladen in den Film haupt.swf.

var var1:loader = new Loader();

an diese SWF wird auch eine userid geschickt die in der haupt.swf vorhanden ist. nach dem verarbeiter aller funktionen in ext.swf soll

erstens:
eine Variable an haupt.swf zurückgegeben werden
zweitens:
die haupt.swf mit play oder nextFrame(), fortgestezt werden.

wie kann ich erstens und zweitens verwirklichen?
Vielen Dank für die Hilfe
hothead89 ist offline   Mit Zitat antworten
Alt 21-09-2009, 15:34   #2 (permalink)
feel the force of flash
 
Benutzerbild von webber
 
Registriert seit: Nov 2001
Beiträge: 322
Das hier dürfte Interessant sein:
Flex 3 - Adobe Flex 3 Help

Da wird im Complete-Handler auf die Haupt-Klasse der swf gecastet.
Funktioniert bei mir aber auch, wenn ich es auf Object caste, da ich die
Klasse nicht im Loader importieren wollte.

Grooce
webber
webber ist offline   Mit Zitat antworten
Alt 22-09-2009, 18:51   #3 (permalink)
Neuer User
 
Registriert seit: Jul 2009
Beiträge: 152
Post Das ist irgendwie nicht so richtig

das ist irgendwie nicht so richtig nach was ich suche...

ich stelle nun mal folgendes beispiel dar:

main.swf
Bild 1 :
Code:
stop();
var test:Loader = new Loader();

var url:URLRequest = new URLRequest();
url.url = "test.swf";

test.load(url);
addChild(test);
Bild2 :
Code:
stop();

test.swf
Bild1 enthält eine schaltfläche namens "scha";
Code:
scha.addEventListener(MouseEvent.MOUSE_UP, doit, false, 0, true);

function doit(evt:MouseEvent):void{
	???  *1
}
bei ??? *1 sollte dann eben der code hin, der besagt, dass bei main.swf nextFrame(); ausgeführt wird. Was genau muss da hin?

Vielen Dank schon mal
hothead89 ist offline   Mit Zitat antworten
Alt 22-09-2009, 19:37   #4 (permalink)
lebt in stereo
 
Benutzerbild von figure8
 
Registriert seit: Mar 2008
Ort: karlsruhe
Beiträge: 1.093
hey, dein bester freund in dem zusammenhang wird wohl dispatchEvent sein.

du kannst dir das so vorstellen: du hast eine wohnung, das ist deine main.swf. in dieser wohnung erstellst du ein zimmer, das wäre deine test.swf. so, nun kann das zimmer machen, was es will - licht anmachen, fenster auf, whatever, ist ein kreatives zimmer jetzt ist es so, dass das zimmer die tür immer zu hat, weil die restliche wohnung garnix davon mitbekommen soll und auch nicht will - wenn man 10 zimmer hat, würde das ja schnell anstrengend werden. du kannst aber dem zimmer sagen "hey, wenn du das licht anmachst, dann sag der wohnung bescheid." - da kommt das eventsystem ins spiel. du kannst der wohnung sagen "pass auf, hör (listen) auf das event "licht anmachen" von zimmer1". und dem zimmer1 sagst du "dispatch das event (sag bescheid), dass du das licht anmachst!" wenn du ein bißchen darüber gelesen hast, wirst du auch über bubbling stolpern, das ist jetzt gerade nicht wichtig, aber damit würdest du sagen "hm, die wohnung allein soll das aber nicht wissen, sondern auch das haus. also geht das event noch weiter nach oben, wenn man sich's haus -> wohnung -> zimmer vorstellt.
wie dem auch sei, wenn dich nur das codesnippet interessiert - das ganze schaut so aus:

ActionScript:
  1. // Main.swf
  2.  
  3. // lädt das swf. wenn's fertig ist (Event.COMPLETE) geht's zur nächsten fkt.
  4. loadSWF();
  5.  
  6. function loadSWF():void {
  7.     var swfPath:URLRequest = new URLRequest();
  8.     swfPath.url="ToLoad.swf";
  9.  
  10.     var swfLoader:Loader = new Loader();
  11.     swfLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, addSWF);
  12.     swfLoader.load(swfPath);
  13. }
  14.  
  15. // fügt das swf zur anzeigeliste hinzu und added den eventlistener
  16. function addSWF(event:Event):void {
  17.     var swfContent:* =event.target.content;
  18.     swfContent.addEventListener("goNextFrame", nextFrameHandler);
  19.     addChild(swfContent);
  20. }
  21.  
  22. // wird ausgeführt, wenn das event von der geladenen swf dispatched wird
  23. function nextFrameHandler(event:Event):void {
  24.     nextFrame();
  25. }

ActionScript:
  1. // ToLoad.swf
  2.  
  3. btn.addEventListener(MouseEvent.CLICK, mainNextFrame);
  4.  
  5. // erstellt ein neues event, das bubblen darf und nicht abbrechbar ist.
  6. function mainNextFrame(event:MouseEvent):void {
  7.     var nextFrameEvent:Event = new Event("goNextFrame", true, false);
  8.     dispatchEvent(nextFrameEvent);
  9. }

hoppla, vertippt
__________________
* Flash-JunkieMusiker & Grafiker

# Marvin Blase
# Speaker, Author, Silly Billy.
# @beautifycode

Geändert von figure8 (22-09-2009 um 22:09 Uhr)
figure8 ist offline   Mit Zitat antworten
Alt 22-09-2009, 19:45   #5 (permalink)
Neuer User
 
Registriert seit: Jul 2009
Beiträge: 152
wow respekt...das mit der wohnung und zimmer und so ist eine super metapher!!! VIELEN DANK! Somit hab ichs verstanden und ausprobiert und siehe da es geht VIELEN DANK nochmal solche beschreibungen liest man gerne
hothead89 ist offline   Mit Zitat antworten
Alt 22-09-2009, 19:51   #6 (permalink)
lebt in stereo
 
Benutzerbild von figure8
 
Registriert seit: Mar 2008
Ort: karlsruhe
Beiträge: 1.093
gerngeschehen, freut mich, wenn bei dir das licht angegangen ist.
__________________
* Flash-JunkieMusiker & Grafiker

# Marvin Blase
# Speaker, Author, Silly Billy.
# @beautifycode
figure8 ist offline   Mit Zitat antworten
Alt 03-12-2009, 16:34   #7 (permalink)
Neuer User
 
Registriert seit: Nov 2003
Beiträge: 166
Thumbs up

was 'ne super erklärung! genau das habe ich gesucht!

PHP-Code:
for(var n:int=1;n<=1000;n++)trace("1000 DANK!!!"
jav666 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
eingebettet, extern, loader, swf, var

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Child kann nicht auf Methoden des parent zugreifen? Jobe ActionScript 3 23 19-03-2010 11:00
Actionscript auf andere Ebene zugreifen picard666 ActionScript 3 2 11-12-2008 16:06
Auf Objekte des parent im Repeater zugreifen Ju2999 Flex allgemein 8 14-11-2006 23:24
per actionscript auf bilder in der bibliothek zugreifen? altes-kind Flash MX 4 06-02-2004 08:05
aus loadMovie geladenem clip auf parent clip zugreifen stex ActionScript 1 2 07-09-2003 17:30


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:52 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele