Otener parámetros en eventos de Actionscript 3
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:
-
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:
-
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
-
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
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:
-
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.
Post relacinonados:
4 Comments »
RSS feed for comments on this post. TrackBack URI










Órale! Muy sencillo pero bastante útil! Gracias
.
Siempre he pensado que eso se podÃa hacer. Genial como siempre Z.
[...] Además el manejo de las acciones en actionscript 3, permite obtener datos de las acciones y programar comportamientos mas dinámicos tal y como se muestra en este post [...]
Con que poquito... , tu si que formas parte.
Muchas gracias¡¡¡¡¡¡.