Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    concatenare più stati ad un pulsante

    vorrei concatenare (se questo è il termine giusto)
    al onRollOver sul pulsante grafica_p1
    anche le azioni DragOut e ReleaseOutside, senza dover ripetere il blocco di codice altre due volte!
    Si può?

    grafica_p1.onRollOver = function() {
    grafica_mc1.zoom(200, 5);
    grafica_mc1.swapDepths(PPiano);
    };


    Grazie

  2. #2
    se ho capito bene e le azioni devono essere le stesse basta che fai
    grafica_p1.onRelease(o quello che ti pare)=grafica_p1.onRollOver;

  3. #3
    Si hai capito bene!! grazie, funziona

    il problema di evolve...
    siccome di bottoni (istanziati per es: grafica_p1) e di mc (istanziati per es: grafica_mc1) in questo filmato, ne ho 10, tutti con lo stesso nome, differenziato solo da un numero progressivo, invece che ripetere il blocco 10 volte, mi son detto, proviamo a metterlo in un ciclo for. Fatto. Peccato che non vada più nulla

    Qst il codice... mi sapete divere dove toppo!!!?
    perdonate l'ignoranza...

    for (var x=1; x<11; x++) {
    trace (x);
    grafica_p[x].onRollOver=grafica_p1.onReleaseOutside=grafica_p1 .onDragOut = function() {
    grafica_mc[x].zoom(200, 5);
    grafica_mc[x].swapDepths(PPiano);
    };
    grafica_p[x].onRollOut = function() {
    grafica_mc[x].zoom(100, 5);
    grafica_mc[x].swapDepths(SPiano);
    };
    grafica_p[x].onRelease = function() {
    grafica_mc[x]._alpha = 50;
    gotoAndStop([x+1]);
    };
    } // chiudo for

  4. #4
    Utente di HTML.it L'avatar di byaur
    Registrato dal
    Aug 2004
    Messaggi
    1,061
    se i tuoi bottoni sono istanziati sulla _root. prova così...

    _root["grafica_"+x].onRelease = ....

    Chi di noi non vorrebbe
    sollevare il velo sotto cui sta nascosto il
    futuro...
    David Hilbert

  5. #5
    l'ho fatto, ma non cambia nulla. il problema non sta lì.
    Se tolgo il codice dal ciclo, con o senza _root funziona.
    E' proprio il ciclo for che non parte, infatti il trace non mi da risultato (ne errore).
    Se invece copio e incollo in un nuovo file flash, senza cambiare nulla. Funziona.
    Posto tutto il codice che c'è in quel fotogramma:

    stop();

    _global.cartella = "editoria"; //il nome del file di txt e la cartella devono avere lo stesso nome
    _global.percorso = "contenuti/"+cartella+"/"; //non cambiare nulla
    _global.testo = percorso+cartella+".txt"; //non cambiare nulla

    MovieClip.prototype.zoom = function(endScale, speed) {
    this.onEnterFrame = function() {
    var offset = 0.5;
    var rscale = Math.abs(endScale-this._xscale);
    if (!rscale<=offset) {
    (this._xscale<endScale) ? (this._xscale=this._yscale += rscale/speed) : (this._xscale=this._yscale -= rscale/speed);
    } else {
    delete this.onEnterFrame;
    }
    };
    };

    var PPiano:Number = 2;
    var SPiano:Number= 1;

    for (var i=1; i<11; i++) {
    trace ("conta "+_root[i]);
    _root["grafica_p"+i].onRollOver=_root["grafica_p"+i].onReleaseOutside=_root["grafica_p"+i].onDragOut = function() {
    _root["grafica_mc"+i].zoom(200, 5);
    _root["grafica_mc"+i].swapDepths(PPiano);
    };
    _root["grafica_p"+i].onRollOut = function() {
    _root["grafica_mc"+i].zoom(100, 5);
    _root["grafica_mc"+i].swapDepths(SPiano);
    };
    _root["grafica_p"+i].onRelease = function() {
    _root["grafica_mc"+i]._alpha = 50;
    gotoAndStop([i+1]);
    };
    } // chiudo for

    //Fade
    _global.q = 35;

    MovieClip.prototype.fade = function (fadein, q) {
    this.onEnterFrame = function () {
    if (fadein) {
    if (this._alpha >= 99) {
    delete this.onEnterFrame;
    } else {
    this._alpha +=q;
    }
    } else {
    if (this._alpha <= 0) {
    delete this.onEnterFrame;
    } else {
    this._alpha -=q;
    }
    }
    }
    }

  6. #6
    lo script è nel primo frame del filmato.
    Cmq, ho provato a levare tutto il codice prima e dopo, ma non cambia. Il for non parte, infatti il trace non conta nulla!!!


  7. #7
    Utente di HTML.it L'avatar di byaur
    Registrato dal
    Aug 2004
    Messaggi
    1,061
    prova a modificare il for cosi

    Codice PHP:
    for (var i=1i<11i++) {
    trace ("conta "+_root[i]);
    _root["grafica_p"+i]._indice i;
    _root["grafica_p"+i].onRollOver=_root["grafica_p"+i].onReleaseOutside=_root["grafica_p"+i].onDragOut = function() {
       
    _root["grafica_mc"+this._indice].zoom(2005);
       
    _root["grafica_mc"+this._indice].swapDepths(PPiano);
    };
    _root["grafica_p"+i].onRollOut = function() {
    _root["grafica_mc"+this._indice].zoom(1005);
    _root["grafica_mc"+this._indice].swapDepths(SPiano);
    };
    _root["grafica_p"+i].onRelease = function() {
        
    _root["grafica_mc"+this._indice]._alpha 50;
       
    gotoAndStop([this._indice+1]);
    };
    // chiudo for 
    per il fatto che non ti parte il for, potresti metterlo dentro una funzione tipo ciclo()...che richiami poi con _root.ciclo();
    se nella funzione entra, il for lo deve fare per forza...

    non lo verificato considera...

    ciaociao
    Chi di noi non vorrebbe
    sollevare il velo sotto cui sta nascosto il
    futuro...
    David Hilbert

  8. #8
    grande!
    così funziona!

    l'unica cosa che non capisco però è come mai ancora il trace non dia risultato!!
    mistero

  9. #9
    anche se metto un trace qualsiasi tipo: trace ("ciao");
    fuori dal for, prima di tutto, pure dello stop...
    in output non ho NULLA!!
    bò!

  10. #10
    Utente di HTML.it L'avatar di byaur
    Registrato dal
    Aug 2004
    Messaggi
    1,061
    vai sulle impostazioni di pubblicazione... probabilmente è checcato omit trace action... uncheccalo e vedrai che i trace si vedranno...

    ciao ciao

    Chi di noi non vorrebbe
    sollevare il velo sotto cui sta nascosto il
    futuro...
    David Hilbert

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.