Pagina 2 di 5 primaprima 1 2 3 4 ... ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 43
  1. #11
    leggo (abbastanza)

    capisco (mica tanto...)

    perchè?

  2. #12
    A proposito del setInterval, non andrebbe comunque inserito nell'evento onEnterFrame per funzionare? o altrimenti non l'avevo mai utilizzato bene io

  3. #13

  4. #14
    naturalmente (anche se nel nostro esempio sarebbe non corretto) a parte i componenti io posso definire una classe globale
    fuori dal clip
    codice:
    _global.FaderClass = function() {
    	this.init();
    };
    // ================= definizione metodi
    ...
    // ================= fine definizione metodi
    e associarla così al clip stesso

    codice:
    #initclip
    Object.registerClass("fade", FaderClass);
    #endinitclip
    Questo era solo per prendere più familiarità con l'implementazione

  5. #15
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    Certo, puoi fare anche quello.
    Domani modifico il tuo codice con il setinterval..

  6. #16
    Grazie, per la tua disponibilità! sto leggendo la guida che mi hai proposto e mi sembra che sia scritta in un inglese abbastanza semplice...
    A me risulta difficile capire bene articoli del quale non conosco quasi nulla , magari se so un pò l'argomento riesco a cpairci un pò di più!

    Allora a domani

    made-in-flash

  7. #17
    Per ora sono arrivato qua

    codice:
    #initclip
    
    // Definisco il costruttore della classe da associare al mio clip / componente
    FaderClass = function () {
    	this.init();
    };
    
    // Eredito i metodi della classe MovieClip per la mia classe 
    FaderClass.prototype = new MovieClip();
    
    // definisco gli eventi(metodi di MovieClip) del clip / componente
    FaderClass.prototype.onEnterFrame = function() {
    	this.fade();
    };
    
    // Definisco gli eventi dei pulsanti del componente nel metodo di inizializzazione della classe
    FaderClass.prototype.init = function() {
    	this.button1.onRelease = function() {
    		this._parent.fade_in();
    	};
    	this.button2.onRelease = function() {
    		this._parent.fade_out();
    	};
    };
    
    // ========================= Inizio metodi che controllano il fade dell'oggetto target
    FaderClass.prototype.fade_in = function() {
    	this.start_fade_in = true;
    };
    FaderClass.prototype.fade_out = function() {
    	this.start_fade_out = true;
    };
    FaderClass.prototype.fade = function() {
    	if (this.oggetto_fade._alpha>0 && this.start_fade_out == true) {
    		this.oggetto_fade._alpha -= 5;
    	} else {
    		this.start_fade_out = false;
    	}
    	if (this.oggetto_fade._alpha<100 && this.start_fade_in == true) {
    		this.oggetto_fade._alpha += 5;
    	} else {
    		this.start_fade_in = false;
    	}
    };
    // ========================= Fine dei metodi che controllano il fade
    
    // Registro la classe "FaderClass" e la associo al mio componente
    Object.registerClass("fade", FaderClass);
    #endinitclip
    Un ultima cosa, secondo te, e qui esco un pò dal discorso, magari prendendone uno un pò troppo vasto, qual'è il modo migliore per definire i clip in flash Mx?

    Diciamo che quello che stiamo facendo potrebbe essere la strada migliore da intraprendere?

    CIAO!

  8. #18
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    >qual'è il modo migliore per definire i clip in flash Mx?

    definire in che senso?

  9. #19
    definirne gli eventi e/o metodi partendo dal presupposto che vorrei trattare sempre i miei clip come oggetti da tutti i punti di vista

    e quali sono secondo te in pratica i veri vantaggi di programmare ad oggetti in flash (soprattutto per quello che riguarda i clip)

  10. #20
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479

    a proposito del setInterval

    ad esempio:

    codice:
    #initclip
    
    FaderClass = function ()
    {
    	this.init();
    };
    
    FaderClass.prototype = new MovieClip();
    
    FaderClass.prototype.init = function()
    {
    	this.fadeDIR = "I";
    	this.fadein_btn.onRelease = function()
    	{
    		this._parent.fade_in();
    	};
    	this.fadeout_btn.onRelease = function()
    	{
    		this._parent.fade_out();
    	};
    };
    
    FaderClass.prototype.setObject = function(oggetto)
    {
    	this.oggetto_fade = oggetto;
    };
    
    FaderClass.prototype.fade_in = function()
    {
    	if(this.fadeDIR == "I")return;
    	this.fadeDIR = "I";
    	clearInterval(this.fadeID);
    	this.fadeID = setInterval(this, "doFade", 50, 5);
    };
    
    FaderClass.prototype.fade_out = function()
    {
    	if(this.fadeDIR == "O")return;
    	this.fadeDIR = "O";
    	clearInterval(this.fadeID);
    	this.fadeID = setInterval(this, "doFade", 50, -5);
    };
    
    FaderClass.prototype.doFade = function(factor) {
    	switch(this.fadeDIR)
    	{
    		case "O":
    			if(this.oggetto_fade._alpha <= 0){
    				clearInterval(this.fadeID);
    				this.oggetto_fade._alpha = 0;
    				return;
    			}
    			break;
    		case "I":
    			if(this.oggetto_fade._alpha >= 100){
    				clearInterval(this.fadeID);
    				this.oggetto_fade._alpha = 100;
    				return;
    			}
    	}
    	this.oggetto_fade._alpha += factor;
    };
    
    Object.registerClass("FaderSymbol", FaderClass);
    
    #endinitclip

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.