Zurück   Flashforum > Flex und AIR > Flex programmieren

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 25-03-2011, 13:11   #1 (permalink)
Neuer User
 
Registriert seit: Mar 2011
Beiträge: 6
LoaderInfo Anleitung

Hallo zusammen,

ich verzweifel so langsam wirklich ...

Ich möchte eigentlich eine einfache Sache. Ich möchte aus einer html bzw. cfm Seite die Flashanwendung starten mit einem parameter. Diesen parameter möchte ich dann weiter verarbeiten.

Bis jetzt hab ich herausgefunde, dass ich im javascript bei der html seite folgendes hinzufügen muss:

<param name="FlashVars" value="var1=variable1"/>

Dann muss ich in der Flashanwendung den Loaderinfo aufrufen.

Code:
try {
var var1:String;
var params:Object = LoaderInfo(this.root.loaderInfo).parameters;
var1=params["var1"];
anzeige1.text=var1;

} catch (error:Error) {
var1="Error"
}
Ich bekomme hier aber immer diese Fehler:

1119: Zugriff auf eine möglicherweise nicht definierte Eigenschaft root über einen Verweis mit statischem Typ Class test.mxml

1120: Zugriff auf eine nicht definierte Eigenschaft params.
1120: Zugriff auf eine nicht definierte Eigenschaft vars.


Abgesehen davon, dass wahrscheinlich mein Code total falsch ist:-), weiß ich auch gar nicht wohin ich diesen Code schreiben muss. In die MXML Anwendung in den Scriptbereich?

Vielen Dank im voraus. Ich hoffe mir kann jemand helfen. Ich hatte wirklich jetzt einiges probiert und auch einiges gelesen.... leider ohne erfolg.
Morpheusfgh ist offline   Mit Zitat antworten
Alt 25-03-2011, 13:16   #2 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.147
Zeige mal bitte den ganzen Code.
Omega Psi ist offline   Mit Zitat antworten
Alt 25-03-2011, 13:21   #3 (permalink)
Neuer User
 
Registriert seit: Mar 2011
Beiträge: 6
Code:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" 
			   minWidth="955" minHeight="600" 
			   xmlns:valueObjects="valueObjects.*" 
			   xmlns:server13="services.server13.*" 
			   height.Server="800" xmlns:support1="services.support1.*" 
			   xmlns:webservices1="services.webservices1.*" xmlns:webservices2="services.webservices2.*" 
			   width.Server="800" height.Projekte="800" width.Projekte="800" width.Webservices="800" height.Webservices="800" height.Support="800" 
			   width.Support="800" xmlns:projekte2="services.projekte2.*" 
			   xmlns:modules="modules.*" height.personal="800" width.personal="800" xmlns:geier="services.geier.*" xmlns:user="services.user.*">
			
	<!--css Einbindung-->
	<fx:Style source="Vorlage_development.css"/>
	
	<fx:Script>
	
		<![CDATA[
			import mx.messaging.FlexClient;
			
		
			
			include "valueObjects/getImports.as";
			include "valueObjects/functions.as";
			include "valueObjects/getAdminSiteUrl.as";
			include "valueObjects/getProjektsiteUrl.as";
			include "valueObjects/getServiceSiteUrl.as";
			include "valueObjects/getWebserviceSiteUrl.as";



try {
var var1:String;
var params:Object = LoaderInfo(this.root.loaderInfo).parameters;
var1=params["var1"];
anzeige1.text=var1;

} catch (error:Error) {
var1="Error"
}

	]]>
			
	</fx:Script>
Ab hier kommen dann die Forms usw.. Der Code ist insgesamt 800 Zeilen...

Soll icha uch noch den gesamten javascript bzw. Html Code schicken?

Geändert von Morpheusfgh (25-03-2011 um 13:23 Uhr)
Morpheusfgh ist offline   Mit Zitat antworten
Alt 25-03-2011, 13:24   #4 (permalink)
Flash-Designer
 
Benutzerbild von Martin Kraft
 
Registriert seit: May 2006
Ort: Wiesbaden
Beiträge: 6.164
Hallo und willkommen im FlashForum!

Die Ursache ist höchst wahrscheinlich, dass Dein Code zu einem Zeitpunkt ausgeführt wird, an dem das betreffende Objekt noch nicht in der Anzeigeliste hängt. Da die Eigenschaften root und stage aber nur belegt sind, wenn dies der Fall ist, solltest Du einen entsprechenden Listner registrieren:
PHP-Code:
if (stageinit();
else 
addEventListener(Event.ADDED_TO_STAGEinit);

function 
init(e:Event null):void {
    
removeEventListener(Event.ADDED_TO_STAGEinit);
    
// alles was auf root und stage zugreift

Edit: Sehe gerade das Du mit Flex arbeitest. Da meine Kenntnisse im MXML-Bereich noch eher beschränkt sind, solltest Du Dich, was das angeht, an Omega Psi halten.
__________________
Viele Grüße // Martin

Martin Kraft // Interaktionsdesign

Hilfreiche Websites:
// Hilfe zur Adobe Flash Plattform
// ActionScript 2 Referenz
// ActionScript 3 Referenz
// ActionScript 3 Arbeitshandbuch
// weitere Flash Ressourcen

Bitte keine Flashfragen per PM oder Profilnachricht! Dafür ist das Forum da!

Geändert von Martin Kraft (25-03-2011 um 13:27 Uhr)
Martin Kraft ist gerade online   Mit Zitat antworten
Alt 25-03-2011, 13:24   #5 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.147
Ziemliches Chaos... Und nein, es geht gerade nur um die ActionScript Sourcen.
Omega Psi ist offline   Mit Zitat antworten
Alt 25-03-2011, 13:26   #6 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.147
@Martin: ja, könnte es sein... oder es ist einfach nur falsch programmiert in Flex.
Omega Psi ist offline   Mit Zitat antworten
Alt 25-03-2011, 13:31   #7 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.147
Code:
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
  xmlns:s="library://ns.adobe.com/flex/spark" 
  xmlns:mx="library://ns.adobe.com/flex/mx"
  preinitialize="preinitializeHandler(event)">

  <fx:Script>
    <![CDATA[
      preinitializeHandler(event:Event):void
      {
        for (var key:String in parameters)
        {
          trace(key, parameters[key]);
        }
      }
   ]]>
  </fx:Script>
</s:Application>
So kommst du an die Param.
Omega Psi ist offline   Mit Zitat antworten
Alt 25-03-2011, 13:33   #8 (permalink)
Neuer User
 
Registriert seit: Mar 2011
Beiträge: 6
Erstmal Danke an euch zwei.

ICh habe mit Sicherheit ein riesen Chaos im Code. Bin Anfänger und kann es noch nicht korrekt.

Was sollte ich jetzt konkret ausprobieren?

Nur zu Info: Ich exportiere mein Projekt als swf-Datei und rufe sie dann in der Website auf. Er bringt mir aber bereits Fehler vor dem exportieren im Flash Builder.

Sorry hab gerade deinen Beitrag gesehen..... Ich Versuche es mal. Danke
Morpheusfgh ist offline   Mit Zitat antworten
Alt 25-03-2011, 14:09   #9 (permalink)
Neuer User
 
Registriert seit: Mar 2011
Beiträge: 6
Super!!! Hat geklappt.

Vielen Dank für deine kompetente Hilfe
Morpheusfgh ist offline   Mit Zitat antworten
Alt 31-03-2011, 10:21   #10 (permalink)
Neuer User
 
Registriert seit: Oct 2008
Beiträge: 148
hi,
geht auch über
Code:
Application.application.parameters
nur so zur ergänzung ;-)
sytch ist offline   Mit Zitat antworten
Alt 31-03-2011, 10:25   #11 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.147
In Flex 4 ist das deprecated: FlexGlobals.topLevelApplication wäre es in Flex4.

Und ich würde generell andere Wege präferieren, als die Singletons...
Omega Psi ist offline   Mit Zitat antworten
Antwort

Lesezeichen

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
add + removeChild in LoaderInfo denniz ActionScript 3 5 08-09-2009 08:52
LoaderInfo.loader bei IO_ERROR dreamlab ActionScript 3 2 29-05-2009 06:27
Probleme mit Array und loaderInfo Lukas78 ActionScript 3 4 08-07-2008 08:44
Event Listener für loaderInfo deak Flex programmieren 2 27-11-2007 11:09
loaderInfo global ansprechen derRaab ActionScript 3 0 17-09-2007 11:44


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:16 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele