Zurück   Flashforum > Flash und Server > Flash mit XML und Webservices

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-03-2009, 16:26   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 32
Question im skript selber warten bis XML fertig geladen ist?

Hallo, ich habe ein ganze Menge an Code im ersten Frame und möchte ihn nicht unnötig "zerstreuen", weswegen ich folgendes gerne wüsste:

Ist es möglich den Code zu "pausieren", solange bis der XML-Ladevorgang erfolgreich abgewickelt wurde?

z.B:
PHP-Code:
_xml = new XML();
_xml.ignoreWhite true;
_xml.load("file.xml");// bzw. einen Pfad-Namen eines XML-Files angeben
_xml.onLoad = function(ok) {
    if (
ok) {
        
trace("--- datei erfolgreich geladen");
    } else {
        
trace("fehler");
    }
};
trace("ich sollte eigentlich ganz unter stehen!"); 
Gewünscht ist dann natürlich das hier:
Code:
--- datei erfolgreich geladen
ich sollte eigentlich ganz unten stehen!
in der bitteren Realtiät steht der letzte trace-Eintrag aber natürlich ganz oben.

Hat jemand eine Idee zu dem Problem?
Bonzai ist offline   Mit Zitat antworten
Alt 22-03-2009, 17:05   #2 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
ja,
schreib das "trace("ich sollte eigentlich ganz unter stehen!"); "
unter
" trace("--- datei erfolgreich geladen"); "

dafür ist dieser event da
__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 22-03-2009, 17:09   #3 (permalink)
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 32
ok, klar. Aber ich habe einen haufen Code der erst dann ausgeführt werden soll wenn die XML Datei geladen wurde. Wenn ich das alles in den Eventhandler verschiebe sieht der Code aber enorm unstrukturiert aus, deswegen würde ich gerne wissen ob es eine andere (un)saubere Lösung für mein Problem gibt.
Bonzai ist offline   Mit Zitat antworten
Alt 22-03-2009, 17:13   #4 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
ja.. ne funktion


PHP-Code:
_xml = new XML();
_xml.ignoreWhite true;
_xml.load("file.xml");// bzw. einen Pfad-Namen eines XML-Files angeben
_xml.onLoad = function(ok) {
    if (
ok) {
        
trace("--- datei erfolgreich geladen");
      
startApp();
    } else {
        
trace("fehler");
    }
};
trace("ich sollte eigentlich ganz unter stehen!"); 

function 
startApp ()
{
// hier is dann dein rest code drin 

__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 22-03-2009, 17:34   #5 (permalink)
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 32
komisch... dann reagiert Flash nicht mehr und sagt mir, dass ich das skript abbrechen muss.

Wenn der Code aber einfach dahinter steht funktioniert wieder alles.

PHP-Code:
_xml = new XML();
_xml.ignoreWhite true;
_xml.load("file.xml");// bzw. einen Pfad-Namen eines XML-Files angeben
_xml.onLoad = function(ok) {
    if (
ok) {
        
startApp();
    } else {
        
trace("fehler");
    }
};
function 
startApp (){
// hier is dann dein rest code drin 

Bonzai ist offline   Mit Zitat antworten
Alt 22-03-2009, 17:42   #6 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
da kann ich von hier aus nixsagen weil ich nicht weiss was du fürn code hast

du kannst aber mal
PHP-Code:
function startApp (){
// hier is dann dein rest code drin 

vor das xml object setzen
__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 22-03-2009, 17:43   #7 (permalink)
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 32
ja ich depp... grade beim posten ist mir eingefallen, dass ich natürlich in meinem code weitere functionen habe und diese dort auch definiere.

Uff, sowas wie pausecode(); gibts rein zufällig nicht, oder?
Bonzai ist offline   Mit Zitat antworten
Alt 22-03-2009, 17:52   #8 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
Zitat:
Zitat von Bonzai Beitrag anzeigen
ja ich depp... grade beim posten ist mir eingefallen, dass ich natürlich in meinem code weitere functionen habe und diese dort auch definiere.

Uff, sowas wie pausecode(); gibts rein zufällig nicht, oder?
ne aber du kannst doch alles weitere in deiner funcktion starten wenns xml da ist
__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 22-03-2009, 17:59   #9 (permalink)
Neuer User
 
Registriert seit: Jan 2009
Beiträge: 32
ok, es liegt dann wirklich daran, dass flash erst komplett durch den code geht eher er ins _xml.onLoad = function(ok) geht. Das heißt, dass er sich das so oder so irgendwie für später aufhebt.

Edit:
tracen hat folgendes ergeben:
Code:
---------[ START ]--------------------
xmlDone undefined
-------[ end ]---------------
now in the onLoad function
Start und Ende -> Damit ist natürlich der Start und das ende des codes gemeint.

xmlDone ist eine Abfrage nach der onLoad Funktion, ob die Daten denn wirklich geladen sind ( = true).

Geändert von Bonzai (22-03-2009 um 18:02 Uhr)
Bonzai 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 04:04 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele