+ Rispondi alla Discussione
Risultati da 1 a 5 di 5

Bottone per cambio frame

Ultimo Messaggio di Kerishan il:
  1. #1
    User Newbie
    Data Registrazione
    Mar 2012
    Località
    Molfetta
    Messaggi
    3

    Bottone per cambio frame

    Salve a tutti, sono da poco alle prese con flash (con l'ausilio di flashdevelop per scrivere il codice) in actionscript 3.
    Mi sono arenato ad un problema, ho una stage di class "main".
    Ho un pulsante generico che ho creato dalla mia librearia "mybutton".
    L'istanza di questo preciso bottone l'ho chiamata "insertNazionale".
    Vado in Flash Develop e scrivo:
    Codice:
    public class main extends MovieClip 
    	{
    		public function main() 
    		{
    			trace("prova");
    		}
    		
    		public function insertNazionale(m:MouseEvent)
    		{
    			trace("carta nazionale inserita");
    			this.gotoAndStop(2);
    		}
    		
    	}
    Il pulsante dovrebbe portarmi al secondo frame, giusto? (già creato nel flash che stò utilizzando) E invece non lo fa, quando clicco sul pulsante non succede nulla. Cosa sbaglio?
    Grazie a chiunque voglia aiutarmi e scusate per la domanda un pò nabba.
    Ultima modifica di Kerishan; 18-03-12 alle 12:00

  2. #2
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,643
    Ciao benvenuto sul forum GT, ma questo codice lo hai messo in una classe (file as) o lo hai messo nel fla?

  3. #3
    User Newbie
    Data Registrazione
    Mar 2012
    Località
    Molfetta
    Messaggi
    3
    L'ho messo nel codice as (che uso in flash develop)

  4. #4
    Moderatore
    Data Registrazione
    May 2008
    Località
    Olbia
    Messaggi
    2,643
    Mi spiego meglio, ci sono due modi per "posizionare il codice" o lo si scrive in un file estensione as che verra collegato al file estensione fla, o lo si scrive direttamnete nel file fla, ora il codice che hai postato ha tutta l'aria di essere una classe da file as, ma in questo caso è incompleta, manca il pakage è bisogna importare alcune cose tipo gli events, poi manca il listener per far funzionare il pulsante. Quindi volevo una descrizione più precisa, se il codice lo hai messo in un file as è da completare, se lo hai messo nel fla non va bene.
    Se hai creato un fla con con la grafica e un as con il codice il file codice andrebbw completato così
    Codice:
     package {
        import flash.display.*;
        import flash.events.*;
    public class main extends MovieClip 
        {
            public function main() 
            {
                trace("prova");
            }
            
            public function insertNazionale(m:MouseEvent)
            {
                trace("carta nazionale inserita");
                this.gotoAndStop(2);
            }
            
        }
    }
    mentre nel fla bisognerebbe mettere il codice per caricare il bottone dalla dalla libreria più il listener.
    Codice:
    stop()
    var btn_Nazionale:mybutton = new mybutton
    addChild(btn_Nazionale)
    btn_Nazionale.addEventListener(MouseEvent.CLICK,insertNazionale)
    Ultima modifica di Nhatan; 19-03-12 alle 14:17

  5. #5
    User Newbie
    Data Registrazione
    Mar 2012
    Località
    Molfetta
    Messaggi
    3
    Ok innanzitutto grazie per la risposta, vediamo un pò:

    Codice:
    package  
    {
    	import flash.display.MovieClip;
    	import flash.events.MouseEvent;
    	
    	/**
    	 * ...
    	 * @author Ale
    	 */
    	public class main extends MovieClip 
    	{
    		
    		public function main() 
    		{
    			super();
    			trace("prova");
    		}
    		
    		public function insertNazionale(m:MouseEvent)
    		{
    			trace("carta nazionale inserita");
    			this.gotoAndStop(2);
    		}
    	}
    
    }
    Questo è il codice che ho in as (che uso con flash develop)
    In flash invece ho la mia bella interfaccia con 2 frame, nella prima un pulsante (nome istanza "nazionale") che mi dovrebbe portare al secondo frame.
    Nel mio flash ho un livello con tutta la grafica, uno invece delle actions e in questo (premendo F9 per intenderci) ho scritto:

    Codice:
    stop();
    
    nazionale.addEventListener(MouseEvent.CLICK, insertNazionale);
    Il punto ora è che quando vado ad eseguire (tramite flash develop il file as, mi fa partire in loop i due frame, è come se ignorasse lo stop, quindi non posso capire nemmeno se funziona questo benedetto pulsante. Nel log degli errori mi compare che in riga 3, quindi quella che dice "nazionale.addEventListener(MouseEvent.CLICK, insertNazionale);" c'è l'errore 1120: Access of undefined property insertNazionale.
    Se invece inserisco IN FLASH questa funzione tutto funziona (ma quindi mi ignora l'as sembrerebbe:

    Codice:
    function insertNazionale(event:MouseEvent)
    {
    	gotoAndStop(2);
    }
    Ps. Non ho capito anche, perchè nel fla dici di inserire queste stringhe:

    Codice:
    var btn_Nazionale:mybutton = new mybutton
    addChild(btn_Nazionale)
    che si riferiscono, credo alla creazione dell'istanza "btn_Nazionale" andando a prendere dalla libreria "mybutton".
    Ultima modifica di Kerishan; 20-03-12 alle 16:14

+ Rispondi alla Discussione

^ Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
  • Il codice BB è Attivato
  • Le faccine sono Attivato
  • Il codice [IMG] è Attivato
  • Il codice [VIDEO] è Attivato
  • Il codice HTML è Disattivato
  • Trackbacks Attivato
  • Pingback Attivato
  • Refback Attivato

SEO by vBSEO 3.6.0 PL2 ©2011, Crawlability, Inc.