Cuando lanzamos un evento en Actionscript 3, por ejemplo de la clase MouseEvent, ponemos recuperar una serie de parámetros lanzados con ese evento.
Por ejemplo, en este código:
Código :
boton.addEventListener(MouseEvent.MOUSE_DOWN, onBotonEvent); function onBotonEvent(e:MouseEvent):void { trace(e); }
El trace() nos mostraría el evento que ha lanzado la función mostrando también todos los parámetros. En este caso serían estos:
Código :
MouseEvent type="mouseDown" bubbles=true cancelable=false eventPhase=2 localX=43 localY=30 stageX=170.55 stageY=106 relatedObject=null ctrlKey=false altKey=false shiftKey=false delta=0
Recuperar estos parámetros y saber con detalle el evento que ha lanzado la función nos puede resultar muy útil en muchos casos.
por ejemplo, su quisiésemos ejecutar una acción u otra al clicar sobre el botón dependiendo si estamos pulsando la tecla <ctrl> podríamos recuperar ese parámetro del evento:
Código :
boton.addEventListener(MouseEvent.MOUSE_DOWN, onBotonEvent); function onBotonEvent(e:MouseEvent):void { e.ctrlKey == true ? accion1() : accion2(); }
Aquí, si clicamos al botón sin tener pulsada la tecla <ctrl> ejecutaremos la función accion2, mientras que con el mismo clic con la tecla pulsada ejecutaríamos la función accion1.
También podemos utilizar este recurso para asignar la misma función a varios eventos y poder asignar diferentes parámetros a la función dependiendo del tipo de evento:
Código :
import fl.motion.Color; boton.addEventListener(MouseEvent.ROLL_OVER, onBotonEvent); boton.addEventListener(MouseEvent.ROLL_OUT, onBotonEvent); boton.addEventListener(MouseEvent.MOUSE_DOWN, onBotonEvent); boton.addEventListener(MouseEvent.MOUSE_UP, onBotonEvent); function onBotonEvent(e:MouseEvent):void { var code:uint; e.type == "rollOver" ? code = 0xCCCCCC : null; e.type == "rollOut" ? code = 0x999999 : null; e.type == "mouseDown" ? code = 0x666666 : null; e.type == "mouseUp" ? code = 0xCCCCCC : null; var color:Color = new Color(); color.setTint(code, 1); e.target.transform.colorTransform = color; }
En este ejemplo, todos los eventos del botón ejecutan la misma función pero dependiendo de cada uno se coloreará el clip de un color u otro.
¿Sabes SQL? ¿No-SQL? Aprende MySQL, PostgreSQL, MongoDB, Redis y más con el Curso Profesional de Bases de Datos que empieza el martes, en vivo.
Por penHolder el 18 de Noviembre de 2008
Por solisarg el 18 de Noviembre de 2008
49 tips, vayan marchando las birras ... brindaremos por los 50
Jorge
Por jegm88 el 19 de Noviembre de 2008
Por dashpaul el 19 de Noviembre de 2008
Por Zguillez el 19 de Noviembre de 2008
jegm88-blog :
Wellcome to the jungle
Por The Fricky! el 19 de Noviembre de 2008
Por jegm88 el 19 de Noviembre de 2008
Por eldervaz el 19 de Noviembre de 2008
Por Carloz el 19 de Noviembre de 2008
Por Eliseo el 19 de Noviembre de 2008
Código :
Por todo lo demás claro como el agua
Por Noja33 el 19 de Noviembre de 2008
Por fredybg el 19 de Noviembre de 2008