XML-Datei einlesen und Objekt zurückgeben

ara-art

Mitglied
Hallo,
ich komme leider noch nicht so recht mit AS3 zurecht. Kann sein, dass mein Problem mit einem noch allgemeineren Verständnisproblem zutun hat.
Ich möchte folgendes erreichen:
-Eine Klasse soll XML-Dateien einlesen
- dann die Werte in einem Object speichern
- und zurückgeben
Es scheitert bei mir z.Z. am zurückgeben.

Hier der Code meiner Dokumentenklasse:
PHP:
package stats{
	import flash.display.Sprite;
	import flash.events.*;
	import stats.*;
	
	public class Auslesen extends Sprite{
		function Auslesen(){
			trace("Auslesen funktion läuft");
			var newSet = new ConXMLeinlesen("config.xml");

			// Hier möchte ich gerne auf das Objekt mit den Werten der config.xml zugreifen können.
			
		}
	}
}

und hier die Klasse zum auslesen der XML:
PHP:
package stats{
	import flash.events.*;
	import flash.xml.*;
	import flash.net.URLLoader;
    import flash.net.URLRequest;
	
	class ConXMLeinlesen {
		function ConXMLeinlesen(xml_file) {
			trace("ConXMLeinlesen beginnt");
			trace("mit XML File: " + xml_file);
			var xml_loader:URLLoader = new URLLoader();
			xml_loader.load(new URLRequest(xml_file));
			xml_loader.addEventListener(Event.COMPLETE,parseXML);
		}
		
		function parseXML(evt:Event) {
			trace("erfolgreich geladen");
			XML.ignoreWhitespace = true;
			XML.ignoreComments = true;
			var my_file:XML = new XML(evt.target.data); //XML-daten einlesen
			trace ("Diese XML hat die ID: " + my_file.id.text());
			trace ("Es gibt: " + my_file.sheet.anzahl.text() + " Fragebögen.");
			trace ("Mit jeweils: " + my_file.sheet.fragen.text() + " Fragen.");
		}
	}
}

Es könnte evtl. funktionieren, wenn mann den EventListener in die Dokumentenklasse schreibt, aber dass scheint mir keine schöne Lösung zu sein.

Kann man irgendwie mit "return" arbeiten?
Oder gibt es einen anderen Listener der hier helfen könnte?

Schon mal vielen Dank für eure Hilfe!
 

Neue Beiträge

Zurück