Flashhilfe.de - Flash Community

Aus AS3 FlashVars senden an eine zu ladene Swf(AS3) übergeben. [Flash 10]

 


AntwortenRegistrieren Seite1  

jkreschel#1
Benutzerbild von jkreschel
Beiträge: 6
Registriert: Mar 2010

28.03.2010, 17:38

hallo zusammen,

ich suche verzweifelt nach einer lösung um eine externe swf auf meine bühne zu laden und diese mit einer variablen zum abzuspielen zu bringen.
die variable ist die xml datei welche die externe swf laden soll.
über html, php funktioniert das ganze....also externe swf passt mit flashvars.
nur eben von flash zu flash nicht. :(

mein derzeitigt code bringt den fehler:
Error #2044: IOErrorEvent unverarbeitet. text=Error #2035: Die URL wurde nicht gefunden.
ActionScript:
1
2
3
4
5
6
7
8
var ldr:Loader = new Loader();
var url:String = "galerie.swf";
var urlReq:URLRequest = new URLRequest(url);
var variables : URLVariables = new URLVariables();
variables.myxml = "01.xml";
urlReq.data = variables;
ldr.load(urlReq);
addChild(ldr);


input der externen swf:
ActionScript:
1var myVar:String = stage.loaderInfo.parameters.myxml;


nach 4 stunden im netz suchen und erfolglose versuche gebe ich mich geschlagen.
ich wäre sehr dankbar wenn mit jemand helfen könnte.
Schlagwörter: flashvars, loader, senden
cedddy#2
Benutzerbild von cedddy
Beiträge: 572
Registriert: May 2007

28.03.2010, 21:54

der fehler sagt nur aus das er die swf nicht findet ist die swf im gleichem ordner sonst probier mal ./galerie.swf
Bitte keine pn´s wegen irgendwelchen fragen zu Threads, dafür gibt es sie ja schließich
jkreschel#3
Benutzerbild von jkreschel
Beiträge: 6
Registriert: Mar 2010

Themenautor/in

28.03.2010, 21:58

hatte ich auch schon probiert.
war aber nicht die lösung
ohne variablen(URLVariables) geht es.
Sebastian#4
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

29.03.2010, 00:34

Da Du die Variable bei dem Loader angibst, befindet sie sich in "this" und nicht stage:
ActionScript:
1var myVar:String = this.loaderInfo.parameters.myxml;

loaderInfo ist allerdings erst verfügbar nach dem das Movie in der Stage initialisiert wurde.

Dies kannst Du abfragen mit:
ActionScript:
1Event.ADDED_TO_STAGE


In der geladenen swf sieht das komplette Script dann so aussehen:
ActionScript:
1
2
3
4
5
6
this.addEventListener(Event.ADDED_TO_STAGE, init);

private function init(event:Event):void
{
    var myVar:String = this.loaderInfo.parameters.myxml;
}
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
jkreschel#5
Benutzerbild von jkreschel
Beiträge: 6
Registriert: Mar 2010

Themenautor/in

29.03.2010, 06:56

danke für die schnelle antwort. :)
das hört sich vernünftig an. nur leider kommt es nicht mal zur initialisierung der zweiten swf, weil eben der fehler mit der nicht gefundenen url schon vorher auftritt.
ich hab nun auch schon mit trace überprüft wie letztendlich die gesendete url aussieht.
hatte auch andererseit schon routinen drin, das die variable in der empfangenen swf nur optional gesetzt werden kann.
bring alles nichts.
es scheint irgendwie am senden dieser variablen zu liegen.
sobald ich die variablen einfüge und dem .data anfüge ist es vorbei und die fehlermeldung kommt.
liegt es ggf. an irgendeiner grundeinstellung im flash?

hab auch verzweilfelt nach einem script gesucht wo jemand ganz einfach diese funktion realisiert hat um zu testen.
weil eigentlich sollte das ja so gehen.
Sebastian#6
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

29.03.2010, 10:51

Ich habe das ganze mal mit Flex nachgebaut und dort funktioniert es genau so. Es sollte daher auch in Flash funktionieren. Das die Fehlermeldung bereits vor der Initialisierung kommt, spricht fast dafür das Du nicht auf den Event Added_To_Stage wartest, aber ich gehe mal davon aus das Du das Script korrekt übernommen hast.

Am besten wäre es wenn Du mal deine beiden fla`s einen Beitrag anhängst. Dabei bitte nur auf das nötigste beschränken sprich: Laderoutine und Parameter Aufruf
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
jkreschel#7
Benutzerbild von jkreschel
Beiträge: 6
Registriert: Mar 2010

Themenautor/in

30.03.2010, 19:22

hallo,

habs probiert.
fehlermeldung kommt trotzdem.
anbei die fla's.

grüße

jürgen

Angehängte Dateien:
Adobe Flash Quelldatei galerie1.fla48.00 KB
Adobe Flash Quelldatei header1.fla80.00 KB
Sebastian#8
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

30.03.2010, 20:04

Bei mir funktioniert es ohne den Event. Also einfach nur:
ActionScript:
1var myVar:String = this.loaderInfo.parameters.myxml;
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
jkreschel#9
Benutzerbild von jkreschel
Beiträge: 6
Registriert: Mar 2010

Themenautor/in

30.03.2010, 20:19

mit flex oder mit flash?
ich hatte es ja ursprünglich so....ohne event.
und so funktionierte es über ansteuerung der galerie von einer html heraus mit flashvars.
aber eben nicht in flash und dem laden in die bühne.
also kann es eigentlich nur an der header.fla liegen.
aber warum kommt diese fehlermeldung, das die url nicht gefunden wird sobald ich eine variable hinzufüge?
Sebastian#10
Benutzerbild von SebastianFlashhilfe.de Moderator
Beiträge: 6981
Wohnort: München
Registriert: Jan 2002

30.03.2010, 21:00

Ich habe es direkt mit Deinen fla´s getestet. Der IOErrorEvent tritt nur im Debug Modus auf. Wenn Du die swf über den Flashplayer öffnest funktioniert es.
JavaScript & JavaFX Freelancer || Flashhilfe @ Twitter || XING Profil
jkreschel#11
Benutzerbild von jkreschel
Beiträge: 6
Registriert: Mar 2010

Themenautor/in

02.04.2010, 07:40

so funktioniert es!!!
cool.
na da muss man erstmal drauf kommen. ;-)

aber so richtig begriffen wo der fehler nun lag, hab ich nicht wirklich.
muss ich mir nochmal genau anschauen.

danke!!!

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Javascript new line [Flash CS5] 23.11.2020 - user01234
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2021 Sebastian Wichmann - Flashhilfe.de