Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    282

    piccolo aiuto con classe in AS3

    ciao a tutti, volevo chiedervi un piccolo aiuto su come impostare una classe sul movimento di un ogetto su schermo...
    ogni lavoretto che faccio in Flash butto codice sulla time line e volevo provare ad iniziare con le classi esterne

    vi posto l'esempio che stavo cercando di fare:

    Codice PHP:
    package
    {    
        
    import flash.display.MovieClip;
        
    import fl.transitions.*;
        
    import fl.transitions.easing.*
        public class 
    movie extends MovieClip
        
    {
                
            
    //metodo costruttore
            
    public function movie()
            {

            }
            public function 
    movimento(mc:MovieClip)
            {
                
    TransitionManager.start(mc, {type:Zoomdirection:Transition.INduration:2easing:None.easeOut});
            }
        }

    ed io la richiamavo così:

    Codice PHP:
    import movie;
    movie(foto); 
    l'errore che mi da è impossibile convertire flash.display::MovieClip@5213971 in movie.

    dove sbaglio?
    grazie per l'aiuto...
    Tony

  2. #2
    Utente di HTML.it L'avatar di and80
    Registrato dal
    Mar 2003
    Messaggi
    15,182
    C'è un po' di confusione sulla creazione e l'uso delle classi.
    Vedi, tutti gli elementi visuali che usi abitualmente in flash sono classi e per utilizzarli devi crearne un'istanza e aggiungerli allo stage. Per crearli usi new e per aggiungerli usi addChild.
    Nel tuo caso crei una classe movie che estende MovieClip, perciò dovrai crearne un'istanza e poi usare la sua funzione movimento passandogli questo mc foto

    var mymovie = new movie();
    mymovie.movimento(foto);

    Non sto ora a considerare l'effettivo senso di questa classe, ma voglio farti capire intanto perchè sbagli a supporre che il codice scritto in quel modo possa funzionare.

    Ora, se intendi creare una collezione di funzioni utilizzando una classe esterna, non c'è bisogno di estendere MovieClip, puoi creare una classe che utilizzi metodi statici, ad esempio;

    Codice PHP:
    package {
        
    import fl.transitions.*;
        
    import fl.transitions.easing.*;
        public class 
    Metodi {
            public function 
    Metodi () {
                throw (new 
    Error("La classe non deve essere istanziata"));
            }
            public static function 
    movimento (mc:MovieClip) {
                
    TransitionManager.start(mc, {type:Zoomdirection:Transition.INduration:2easing:None.easeOut}); 
            }
        }

    l'attributo static determina che quella funzione deve essere usata sul filmato direttamente con il nome della classe, quindi:

    Codice PHP:
    Metodi.movimento(foto

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    282
    Grazie come sempre And...

    ora me la studio un pò e provo a farne qualcuna piu' complessa...
    ciaoooo
    Tony

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.