Comunidad de diseño web y desarrollo en internet online

Problema para acceder a propiedades de Movieclip

Citar            
MensajeEscrito el 22 Feb 2011 06:03 am
Hola amigos, tengo un problema por falta de experiencia en as3
Yo tengo un symbole de MovieClip (Movie) asociado con una clase (MyMovie.as) publica. creo una instancia a esta clase y lo duplico 10 veces dinamicamente so quisiera acceder a la function ("Mover") que esta dentro de la clase de uno de los Movieclip especificamente. yo intente con su nombre pero me error

Código ActionScript :

package{
    import flash.display.MovieClip;
    public class MyMovie extends MovieClip{
         public funcion MyMovie(){

      }
      public function Mover():void{
          trace("hello "+name);
        }
     }
}

//dentro del timeline
for(var init:uint=0; init<10; init++){
 var move:MyMovie=new MyMovie();
move.x=10, move.y=10;
move.name="move"+i;
}


move2.Mover(); // za no me sale nigun hell move2
por favor haz lo salir para mi

antes de todo, si mi pregunta va a molestarte no lo conteste por favor y no me digas "buscarlo en Google" ya antes de ponerme en un foro es porque y pierdo demasiado tiempo(mas de 1 hora) en buscar... I already know google thank you...

Por Andosonson

25 de clabLevel



Genero:Masculino  

Logic Creative

firefox
Citar            
MensajeEscrito el 22 Feb 2011 07:07 am
BuenAS:

Prueba

MyMovie(this["move2"]).Mover();

Pero también lo que veo es que no haces un addChild(move) en el for, por lo que no lo estás añadiendo al stage la película.

Un saludo

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 22 Feb 2011 08:11 am
Lukánicos tiene razón, lo primero que tienes que hacer es añadirlo al stage en el for

Código ActionScript :

for(var init:uint=0; init<10; init++){ 
 var move:MyMovie=new MyMovie(); 
  ....
  addChild(move)
}

Luego, para ejecutar una función, DEBES buscarlo. Para ello usaremos la función getChildByName. No sirve lo que te comentó Lukánicos (pues eso serviría si lo que creáramos es una variable). Así que lo tienes que hacer en dos pasos

Código ActionScript :

var mc:MovieClip=getChildByName("move2") as MovieClip
mc.Mover()

El método getChildByName busca un DisplayObject llamado "move2". como nosotros sabemos que no sólo es un DisplayObject, sino un MovieClip, realizamos una "conversión de cast". Es eso tan extraño de "as MovieClip"

Por Eliseo2

710 de clabLevel



 

firefox
Citar            
MensajeEscrito el 22 Feb 2011 11:30 am

Andosonson escribió:

antes de todo, si mi pregunta va a molestarte no lo conteste por favor y no me digas "buscarlo en Google" ya antes de ponerme en un foro es porque y pierdo demasiado tiempo(mas de 1 hora) en buscar... I already know google thank you...


WTF !!! No suena muy simpático ¿No? XD

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

chrome
Citar            
MensajeEscrito el 22 Feb 2011 12:49 pm
...perdón por el error O:). Pues sí, estaba un poco dormido esta mañana. No me di cuenta de que lo estaba haciendo Andosonson era nombrando los símbolos.

Por Lukánicos

Claber

468 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 22 Feb 2011 01:42 pm
muchas Gracias Lukánicos, Hernán y Eliseo2 todo bien ahora...

otra preguntita.
cual es la alternativa del delete de as2 en as3 para borrar objecto de una clase?
[url=http://www.bigresource.com/FLASH-Delete-object-in-AS3-QRGoo25ik9.html][/url]

Gracias de nuevo

Por Andosonson

25 de clabLevel



Genero:Masculino  

Logic Creative

firefox
Citar            
MensajeEscrito el 23 Feb 2011 01:13 am

Código ActionScript :

cualquier_objeto = NULL;


Luego el Garbage Collector lo borra por ti. Es la manera más eficiente y correcta de lograrlo.

Saludos, Hernán . -

Por Hernán

BOFH

6148 de clabLevel

19 tutoriales
23 articulos

Genero:Masculino   REC Desarrollador de GAIA

Marketing & IT

chrome
Citar            
MensajeEscrito el 23 Feb 2011 02:29 am
ah! :o que bueno, no lo habia pensado es una forma segura y correcta para borrar un objeto
Exacto
Muchas Gracias a todos :D :D :D :D :D :D :D :D :D :D :D :D :D :D

Por Andosonson

25 de clabLevel



Genero:Masculino  

Logic Creative

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.