Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610

    rallentare l'esecuzione del codice

    salve,

    vorrei sapere se è possibile creare nel codice una sorta di pausa

    del tipo :


    istruzione1
    istruzione2
    istruzione3
    pausa di 10 secondi
    istruzione4
    istruzione5

    ecco. volevo sapere se era possibile fare questo e se è
    possibile come si fa ?

  2. #2
    codice:
    // AZIONE CHE LANCIA LA SEQUENZA
    function lanciaSerieDiAzioni() {
    	frame_temporale = 0;
    	//AZZERA TIMELINE DELLE AZIONI
    	millisecondi = 1000;
    	//VIENE ESEGUITA UN AZIONE AL SECONDO
    	timelineID = setInterval(handlerAzioni, millisecondi, frame_temporale++);
    }
    // HANDLER DELLE AZIONI
    function handlerAzioni(frame_temporale) {
    	switch (frame_temporale) {
    	case 0 : //secondo 0 (esegui subito);
    		funzione1(); //edita qui
    		break;
    	case 1 : //secondo 1;
    		funzione2(); //edita qui
    		break;
    	case 2 : //secondo 2;
    		funzione3(); //edita qui
    		break;
    	//implicita PAUSA DI 10 secondi
    	case 12 : //secondo 12;
    		funzione4(); //edita qui
    		break;
    	case 13 : //secondo 13;
    		funzione5(); //edita qui
    		break;
    	case 14 : //secondo 14
    		funzione6(); //edita qui
    		//AUTOCANCELLA SEQUENZA
    		clearInterval(timelineID);
    		break;
    	default :
    		//esegui secondo di PAUSA
    		trace("pausa 1 secondo");
    		break;
    	}
    }
    si utilizza così:

    lanciaSerieDiAzioni();

    edita il nome delle azioni da lanciare dalla funzione handlerAzioni(); . Puoi editare la velocità di esecuzione del ciclo modificando la variaibile millisecondi, ma bada che tutto diverrà più veloce, anche le pause.

    Ciao

    platone

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610
    si ad una soluzione di questo ci ero arrivato :-)

    quindi non c'è altra soluzione

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610
    Originariamente inviato da yag
    si ad una soluzione di questo ci ero arrivato :-)

    quindi non c'è altra soluzione
    stavo pensando sfruttando onenterfrmae (che viene chiamato una volta
    ogni tot secondi )
    è possibile temporizzare una istruzione al secondo ?

    che calcolo protrei fare ?

  5. #5
    Originariamente inviato da yag
    stavo pensando sfruttando onenterfrmae (che viene chiamato una volta
    ogni tot secondi )
    è possibile temporizzare una istruzione al secondo ?

    che calcolo protrei fare ?

    dovresti fare,
    codice:
    tuoClip.counterFrame = 0;
    tuoClip.pausa = 10*framePerSecondo; // calcoliamo la pausa
    tuoClip.enterFrame = function () {
    
    if (counterFrame==0) faiQuesto();
    else if (counterFrame==1) faiQuesto();
    else if (counterFrame==2) faiQuello();
    else if (counterFrame==pausa+2) faiQuest'altro();
    else if (counterFrame==pausa+3) faiPureQuesto();
    // FINE:
    else if (counterFrame==limite) this.removeMovieClip();
    // SE E' RIMOVIBILE OPPURE SI PUò FARE: this.enterFrame = null;
    
    counterFrame++;
    }

    Seconto quanto detto in questo topic sembrerebbe che setInterval consumi di meno di enterframe.... quindi è meglio usarla. Lascio il link come riferimento.
    http://forum.html.it/forum/showthrea...hreadid=672765
    Chiaramente questo è solo un parere, però mi fiderei di thunderlips.

    Ciao :sexpulp:

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,610
    Ho trovato un'altra soluzione eccola:

    codice:
    istruzione1
    istruzione2
    ritardo();
    istruzione3
    istruzione4
    
    
    function ritardo() {
    britardo = true;
    id_temporitardo = setInterval(annulla_ritardo,tempo_ritardo,this);
    }
    
    
    function annulla_ritardo(obj) {
    clearInterval(obj.id_temporitardo);
    obj.britardo = false;
    }
    britardo e id_temporitardo sono globali funziona bene ed è ordinato :-) (sto dentro ad un comp. ecco il perchè del this su setInterval)

    Ciao

  7. #7

    per piacere aiutatemiii....


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.