¿Cómo crear objetos arrastrables en Actionscript 3.0?

Arrastrar un objeto en Actionscript es uno de los conocimientos básicos que se requieren a la hora de crear interactividad. La lógica básica es la siguiente:

  1. Detectar cuando se presionó sobre el objeto.
  2. Indicar que hacer cuando se presiona el objeto.
  3. Detectar cuando se suelta el botón del mouse.
  4. Indicar que hacer cuando se suelta el botón del mouse.

Digamos que el objeto tiene el nombre de instancia miObjeto_mc, en otro layer ponga el siguiente código:

//1) Detectar cuando se presionó sobre el objeto.
miObjeto_mc.addEventListener("mouseDown", miObjeto_mc_mouseDown);
//2) Indicar que hacer cuando se presiona el objeto.
function miObjeto_mc_mouseDown(event)
{
     miObjeto_mc.startDrag();
}
//3) Detectar cuando se suelta el botón del mouse.
miObjeto_mc.addEventListener("mouseUp", miObjeto_mc_mouseUp);
//4)Indicar que hacer cuando se suelta el botón del mouse. 
function miObjeto_mc_mouseUp(event)
{
     miObjeto_mc.stopDrag();
}

Antes de proceder asegurese de que ha leído y comprende el concepto de eventos.

Los eventos mouseDown y mouseUp

Estos dos eventos se disparan cuando se aprieta el botón izquierdo del mouse.

Se dispara cuando se aprieta el mouse: "mouseDown"
Se dispara al soltar el botón del mouse (aquí también ocurre el evento click): "mouseUp"

Los métodos startDrag y stopDrag

Estos dos métodos permiten decirle al objeto que inicie y detenga el arrastre de acuerdo a donde se mueve el cursor.

Inicia el arrastre: startDrag( )
Detiene el arrastre: stopDrag( )
Práctica:
Crear una muñeca de papel que se pueda vestir.

No comments:

Post a Comment