Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 18-03-2005, 10:49   #1 (permalink)
Neuer User
 
Benutzerbild von Beisser
 
Registriert seit: Jan 2005
Beiträge: 27
Funktionen nacheinenader ausführen

Hi Leute,
ich habe drei Funktionen, die nacheinander aufgerufen werden sollen. Und zwar soll die nächste erst dann aufgerufen weden, wenn die Aktionen in der vorherigen abgeschlossen sind.

Bsp: function1() läd Bilder, function2() verwendet diese Bilder und soll erst dann aufgerufen werden, wenn function1() alles geladen hat

Ich hatte erst die function2() aus function1() aufgerufen. Aber die Funktionen müssen unabhängig voneinander sein.

Kann man das irgendwie mit einem Rückgabewert realisieren?

Gibt es sowas in der Art:
if(function1()){
function2();
}

Gruß und Danke,
Beisser
Beisser ist offline   Mit Zitat antworten
Alt 18-03-2005, 10:58   #2 (permalink)
Neuer User
 
Benutzerbild von Ceverlante
 
Registriert seit: Feb 2005
Ort: leverkusen
Beiträge: 8
nur ein vorschlag

Hallo Beisser,
ich hatte mal ein ähnliches problem - habs so gelöst:

Ich hab eine variabele z.B _root.goNextFuction1=false; gesetzt.
diese wird in deiner ersten function dann auf "true" gesetzt wenn sie zuende ist.
Dann hab ich mit nem onEnterFrame die variable solange abfragen lassen,bis die Variable true war,und dann ist er in die function gesprungen.

kleines symples beispiel:
________________________________________________
_root.goNextFunction1=false;
onEnterFrame = function(){
if(_root.goNextFunction1==true){
function2();
}
}

und im ende der function1(); muss dann ein

_root.goNextFunction1=true;

stehen.


ist vielleicht ne etwas komplizierte lösung,aber sie hat zumindestens funktioniert. Ich hoffe ich konnte ein wenig helfen.


mfg
ceverlante
Ceverlante ist offline   Mit Zitat antworten
Alt 18-03-2005, 11:02   #3 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Die Lösung!

Warum machst Du das dann nicht so:
PHP-Code:
function a(){ doThisb();} 
function 
b(){ doThisc();}
function 
c(){ doThis;} 
Oder Du schreibst Deine Funktionen leicht um, in dem du noch zusätzlich einen Parameter mitgibst dieser ist eine Funktion (Flash meckert nicht wenn Du dann diese Funktion ohne diesen Parameter aufrufst).
Das ist wohl die bessere Lösung für Euch beide .
Bsp:
PHP-Code:
// b soll die andere Funktion sein
function einsa)

    
trace("a = " );
    
b();

function 
zwei()

    
trace("Hallo, hier ist Funktion zwei");
}

// funtz
eins);
//ruft zum Schluss Funktion zwei auf
einszwei ); 
__________________
ERROR: Signature is too large

Geändert von rendner[i] (18-03-2005 um 11:48 Uhr)
rendner[i] ist offline   Mit Zitat antworten
Alt 18-03-2005, 12:04   #4 (permalink)
Neuer User
 
Benutzerbild von Beisser
 
Registriert seit: Jan 2005
Beiträge: 27
Danke für die schnellen Antworten, bin schwer begeistert.

@rendner[i]
Das ist ja ne heiße Lösung.
Hat den Vorteil, dass man total unabhängig ist, ob man noch ne Fkt aufrufen will oder halt nicht. Genau das was ich brauche. Ich hatte eben auch eine zweite Variable übergeben, die ich dann mit if(){tu es oder auch nicht} überprüft habe. Aber so wie du es machst wird der code viel kürzer. big THX
Beisser ist offline   Mit Zitat antworten
Alt 18-03-2005, 12:06   #5 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Ja ist super praktisch diese Version .
__________________
ERROR: Signature is too large
rendner[i] 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 13:54 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele