Comunidad de diseño web y desarrollo en internet online

Posición en la Display List del elemento clicado

Citar            
MensajeEscrito el 18 Ago 2009 02:25 pm
Coloqué en el palco 2 Movieclips instanciándolos como mc1 y mc2. Mi objetivo es determinar la posición ( index ) del elemento que fue clicado.

Código ActionScript :

mc1.addEventListener( MouseEvent.CLICK, mc1_CLICK );

function mc1_CLICK ( e:MouseEvent ):void
{
   trace ( e.currentTarget.name ); //Da el nombre de instancia: mc1
        trace("Posición del mc1: " + getChildIndex(e.currentTarget.name)); // Devuelve un error
   trace("Posição da mc1: " + getChildIndex(mc1)); // Da la posición, en este caso 0
}


El erro es este:
Falla de coerción del tipo: no es posible convertir "mc1" en flash.display.DisplayObject.

Alguien sabe como resolver este problema? Desde ya muchas gracias.

Claudio

Por Ishkandar

Claber

303 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 18 Ago 2009 04:01 pm
hola, yo lo que hago es crear una referencia al "e" object haciendo un cast con el operador "as" el codigo es el siguiente:

Código ActionScript :

mc1.addEventListener( MouseEvent.CLICK, mc1_CLICK ); 
 
function mc1_CLICK ( e:MouseEvent ):void 
{ 
   var target:MovieClip = e.target as MovieClip;//crea una referencia al event object
   trace("la posicion del "+ target.name + " es = " + getChildIndex(target));
} 


espero te funcione, y te recomiendo que te mires este tip de AXM explica de una manera muy grafica como esta el display list.
Saludos..

Jonathan

Por maneuver

243 de clabLevel



Genero:Masculino  

Mexico City

chrome

 

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