Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 16-11-2006, 13:12   #1 (permalink)
Neuer User
 
Benutzerbild von davidb
 
Registriert seit: Sep 2004
Beiträge: 2
XML::OnLoad() überschreiben >> Wie komme ich an ParentMovieClip ?

Code:
class MyClass{
   private var _parentMovieClip:MovieClip;
   private var _objXml:XML;
   function MyClass(parentMovieClip:MovieClip) {
      _parentMovieClip = parentMovieClip;
   }
   function LoadObjectsFromXML(xmlFile:String){
      _objXml = new XML();
      _objXml.ignoreWhite = true;
      _objXml.load(xmlFile);
      _objXml.onLoad = function() {
         if (this.loaded && this.hasChildNodes) {
             _parentMovieClip.gotoAndStop(2);
         }
      };
   }
}
Problem: _parentMovieClip.gotoAndStop(2); ist 'undefined', da logischerweise _parentMovieClip in der Klasse XML nicht vorhanden ist.
Meine darauf folgende Lösung war:
Code:
class MyClass{
   private var _parentMovieClip:MovieClip;
   private var _objXml:XML;
   function MyClass(parentMovieClip:MovieClip) {
      _parentMovieClip = parentMovieClip;
   }
   function LoadObjectsFromXML(xmlFile:String){
      _objXml = new XML();
      _objXml.ignoreWhite = true;
      _objXml.load(xmlFile);
      _objXml.onLoad = OnLoadXML;
   }
   function OnLoadXML(success:Boolean){
         if (_objXml.loaded && _objXml.hasChildNodes) {
             _parentMovieClip.gotoAndStop(2);
         }else{
             trace("Failed loading XML");
         }
   }
}
Nun bekomme ich aber "Failed loading XML" >> _objXml.loaded == false;

Hat jemand eine Idee ? Was mache ich falsch ? Ich möchte im Prinzip nur in der XML::OnLoad an mein selbst definiertes parentMC.

grüße David

Geändert von davidb (16-11-2006 um 13:15 Uhr)
davidb ist offline   Mit Zitat antworten
Alt 16-11-2006, 13:55   #2 (permalink)
Neuer User
 
Benutzerbild von davidb
 
Registriert seit: Sep 2004
Beiträge: 2
Solved it myself:

Code:
class MyXML extends XML {
	
	private var _parentMovieClip:MovieClip;
	public function SetParentMovieClip(parentMovieClip:MovieClip){
		_parentMovieClip = parentMovieClip;
	}
	
	public function onLoad(success:Boolean){
		if (this.loaded && this.hasChildNodes) {
			this._parentMovieClip.gotoAndStop(2);
		} else {
			trace("Failed loading XML");
		}
	}
}

Code:
class MyClass{
   private var _parentMovieClip:MovieClip;
   private var _objXml:MyXML;
   function MyClass(parentMovieClip:MovieClip) {
      _parentMovieClip = parentMovieClip;
   }
   function LoadObjectsFromXML(xmlFile:String){
      _objXml = new MyXML();
      _objXml.SetParentMovieClip(_parentMovieClip);
      _objXml.ignoreWhite = true;
      _objXml.load(xmlFile);
   }
}
Greetings David
davidb 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



Alle Zeitangaben in WEZ +1. Es ist jetzt 14:02 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele