Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 26
  1. #11
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    69
    scusate anche io sono interessato a quest effetto ed ho provato ad eseguire le istruzioni ma mi dice che ci sono errori nel codice:

    **Errore** Scena=Scena 1, livello=Livello 2, fotogramma=1:Linea 16: È previsto ')'
    if (animazione terminata) {

    **Errore** Scena=Scena 1, livello=Livello 2, fotogramma=1:Linea 23: Rilevato '}' imprevisto
    }

    Totale errori ActionScript: 2 Errori segnalati: 2

    inoltre ammetti di non aver capito bene come funziona. mi date una piccola spiegazione?

    grazie anticipatamente a tutti

  2. #12
    Ciao ragazzi, vediamo se ho capito... Ipotizziamo di avere 3 pulsanti sul documento principale, 3 fotogrammi che si chiamano "pagina1", "pagina2" e "pagina3" e ognuno di questi fotogrammi carica un file swf esterno (swf1, swf2 ed swf3). L'effetto che si vuole ottenere è che quando clicco sul pulsante 2, ed è attivo il file swf1, il file swf1 non deve scomparire di botto ma deve terminare con un'uscita e solo dopo quando il file swf1 ha terminato la linea di riproduzione dovrà passare al fotogramma 2 e diconseguenza caricare swf2?

  3. #13
    Se questo è l'effetto che volete ottenere potete fare come segue. Ogni file swf, nell'ipotesi sono 3, dovrà avere su un livello chiamato ad esempio "in_out", 2 fotogrammi che chiameremo uno "in" e uno "out", il fotogramma "out" corrsiponde all'inizio dell'uscita del filmato.
    Sul livello "azioni" lo stop() si troverà un fotogramma prima del fotogramma denominato "out", mentre alla fine del filmato e quindi dopo che è inziata la riproduzione partendo da "out", sul livello azioni scriveremo:

    codice:
    _root.gotoAndStop(fotogramma);
    gotoAndStop(1);
    Andiamo ai pulsanti che si trovano sulla timeline del documento principale. I pulsanti lavoreranno con variabili globali cioè con _global, in modo tale da raggiungere qualsiasi profondità senza dover ricorrere ai percorsi.

    codice:
    pulsante1.onRelease=function(){
    if (fotogramma=="pagina2"){
    swf2.gotoAndPlay("out");
    _global.fotogramma="pagina1"; // in questo modo quando l'swf inizerà l'uscita da "out" e la //timeline riceverà il comando _root.gotoAndStop(fotogramma), la linea di riproduzione saprà //dove andare
    }
    
    if (fotogramma=="pagina3"){
    swf3.gotoAndPlay("out");
    _global.fotogramma="pagina1";
    }
    }
    
    pulsante2.onRelease=function(){
    if (fotogramma=="pagina1"){
    swf1.gotoAndPlay("out");
    _global.fotogramma="pagina2";
    }
    if (fotogramma=="pagina3"){
    swf3.gotoAndPlay("out");
    _global.fotogramma="pagina2";
    }
    }
    
    pulsante3.onRelease=function(){
    if (fotogramma=="pagina1"){
    swf1.gotoAndPlay("out");
    _global.fotogramma="pagina3";
    }
    if (fotogramma=="pagina2"){
    swf2.gotoAndPlay("out");
    _global.fotogramma="pagina3"; 
    }
    }
    E' importante che almeno un fotogramma prima di questo, sia stata definita già la variabile globale fotogramma. Siccome nel nostro esempio il fillmato che verrà caricato prima è il filmato swf1 che si trova sul fotogramma chiamato "pagina1", valorizzeremo con _global.fotogramma="pagina1", così cliccando qualsiasi pulsante dei 3 presenti nell'esempio, flash non avrà problemi a capire quale filmato deve effettuare l'uscita.

  4. #14
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    69
    grazie ora provo e poi ti faccio sapere


    quello che sto cercando di fare è una cosa come questa link


    curiosità:
    c è un modo per dire al un pulsante che carica un filmato esterno in un movieclip "contenitore" una cosa simile

    on(release){
    nel filmato (che non si sa quale sia) che è adesso in esecuzione in "contenitore" vai al frame 2
    }

    ????

  5. #15
    hummmm, sono le 1.10, non comprendo bene ciò che hai scritto, scusa. Magari domani col giorno.

  6. #16
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    69
    non funziona

  7. #17
    Originariamente inviato da marianox
    scusate anche io sono interessato a quest effetto ed ho provato ad eseguire le istruzioni ma mi dice che ci sono errori nel codice:

    **Errore** Scena=Scena 1, livello=Livello 2, fotogramma=1:Linea 16: È previsto ')'
    if (animazione terminata) {

    **Errore** Scena=Scena 1, livello=Livello 2, fotogramma=1:Linea 23: Rilevato '}' imprevisto
    }

    Totale errori ActionScript: 2 Errori segnalati: 2
    inoltre ammetti di non aver capito bene come funziona. mi date una piccola spiegazione?
    grazie anticipatamente a tutti
    Mi sono accorto solo ora che hai "riaperto" una vecchia discussione...

    Riguardo quel "if (animazione terminata)
    si trattava, naturalmente, di una annotazione "logica" e NON di vero codice.
    Questo perché il controllo del completamento di un'animazione può essere fatto in tanti modi, dipende da come l'hai sviluppata.
    Per esempio puoi confrontare _currentframe con _totalframes, oppure puoi impostare una variabile a true quando l'animazione finisce e quindi fare il test su tale variabile.
    Insomma era una descrizione "logica" NON codice.

  8. #18
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    69
    ti spiego. io da ignorante in materia ero partito con questo percorso:

    - pulsanti sul filmato principale A che caricano filmati esterni un un mc "contenitore".
    - i filmati esterni sono di 30 frame( da 1 a 15 c è la pagina e da 16 a 30 l animazione di chiusura). al frame 15 c è stop(); e al 30 loadMovieNum(link) dove link è una variabile inviata dai pulsanti dell filmato principale A.

    solo che in questo caso i pulsanti del filmato principaleA dovevano dire una cosa simile:
    nel filmato attualmente caricato di "contenitore" vai al frame 16 (logicamente non si sa in quale sezione sia l utente, quindinon si sa quale filmato è caricato), e poi doveva passare sempre al filmato secondario la variabile link con il nome dell swf da caricare.

    poi tra forum e consili vari si è stravolto tutto ed ho perso quest idea di partenza che non so nemmeno se era fattibile come cosa.

  9. #19
    La tua idea è fondamentalmente buona.
    L'unica cosa che non mi piace è il "loadMovie" nell'ultimo frame dell'animazione di uscita, ma è una questione di stile, può funzionare ugualmente, ma "concettualmente" dovrebbe essere sempre il main-program ad avere il controllo di tutto e, di conseguenza, decidere il da farsi.
    Ti sottopongo due possibili soluzioni, una per implementare il codice che avevo proposto, due per sviluppare la tua idea originale.

    Soluzione uno.
    nell'ultimo frame del tuo (dei tuoi) movie esterni imposti la variabile terminato = true.
    Tale variabile l'avrai preventivamente impostata a FALSE nel 1° frame del movie esterno.

    Poniamo che il movieclip dove hai caricato il filmato esterno sia istanziato contenitore
    il codice che avevo suggerito andrà modificato così:
    codice:
    function cambiasezione (sez) {
        sezionenuova = sez;
         // il test seguente serve x evitare di eseguire la funzione se uno clicca più volte consecutivamente sullo stesso pulsante
        if (sezioneattiva != sezionenuova) {
             // questo invece x saltare la chiusura se NESSUNA sezione è attiva (tipicamente la prima volta)
             if (sezioneattiva != "") {
                 // qui inserisco i comandi per "lanciare" la clip di "chiusura"...
             }
             this.onEnterFrame = function () {
                  // qui eseguo il test per sapere se l'animazione di chiusura è terminata...
                   if (contenitore.terminato) {
    		trace("fase di apertura");
    		sezioneattiva = sezionenuova;
    		// qui inserisco i comandi per "lanciare" la clip di "apertura"...
    		delete this.onEnterFrame;
                  }
             }
         }
    }
    Soluzione due.
    L'animazione di chiusura di tutti i tuoi movie esterni dovrà essere segnalata da un'etichetta, uguale per tutti i movie, poniamo: chiusura.
    Sulla timeline principale ci sarà una variabile (poniamo link) dove i vari pulsanti di sezione memorizzano il nome del movie da caricare.
    Il movieclip contenitore sarà istanziato con "contenitore".
    Esempio del pulsante CONTACT US:
    codice:
    on (release) {
         link = "contact.swf";
         contenitore.gotoAndPlay("chiusura");
    }
    Nell'ultimo frame di ogni animazione di chiusura (che sia il 30° o il 50° non importa) ci sarà questa istruzione:
    codice:
    this.loadMovie(_parent.link);
    Naturalmente ho presupposto che il movie "contenitore" sia sulla timeline principale e NON annidato dentro un altro clip.

  10. #20
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    69
    grazie mille, funziona
    per ora ho usato la soluzione 2 per questione di tempo, ma poi con calma studierò la 1.
    ciao e grazie ancora

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 © 2026 vBulletin Solutions, Inc. All rights reserved.