Comunidad de diseño web y desarrollo en internet online

Duda sobre desplazar

Citar            
MensajeEscrito el 13 May 2010 03:59 pm
Hola,

Quisiera saber como puedo hacer mediante as3, para que un mc se desplace hacia algún lado (izquierda o derecha) cuando pasa el puntero del mouse sobre un botón, pero que el desplazamiento se termine sólo cuando quite el puntero del botón, ya que lo que he logrado es sólo desplazar el clip una sola vez. Es decir tengo esto:


boton1.addEventListener(MouseEvent.MOUSE_OVER, izquierda);
boton2.addEventListener(MouseEvent.MOUSE_OVER, derecha);

function izquierda(event:MouseEvent):void{
clip1.x -=11
}

function derecha(event:MouseEvent):void{
clip1.x +=11;
}


Gracias de antemano por su ayuda.

Por ferru11

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 13 May 2010 04:12 pm
Siempre que queramos que algo se haga "durante un tiempo", tenemos que crear un ENTER_FRAME (vale, también se puede usar un Timer)
Así que

Código ActionScript :

boton1.addEventListener(MouseEvent.MOUSE_OVER, crearListener);
boton1.addEventListener(MouseEvent.MOUSE_OVER, eliminarListener);

function crearListener(e:MouseEvent){
       clip1.addEventListener(Event.ENTER_FRAME,izquierda)
}
function eliminarListener(e:MouseEvent){
       clip1.removeEventListener(Event.ENTER_FRAME,izquierda)
}
function izquierda(event:Event):void{
clip1.x -=11
}

Por Eliseo2

710 de clabLevel



 

firefox
Citar            
MensajeEscrito el 13 May 2010 10:25 pm
Muchas gracias, lo usaré a ver que tal sale

Por ferru11

3 de clabLevel



 

firefox
Citar            
MensajeEscrito el 14 May 2010 09:46 am
Puedes utilizar la sentencia SWITCH, a mi personalmente me da mejores resultados.

Código ActionScript :


boton_mc.addEventListener(MouseEvent.MOUSE_OVER, mover_boton ,false, 0, true);
boton_mc.addEventListener(MouseEvent.MOUSE_OUT,mover_boton, false, 0, true);

function mover_boton(event:MouseEvent):void {
   switch (event.type) {
      case MouseEvent.MOUSE_OVER :
var boton_over:Tween=new  Tween(boton_mc,"x",Elastic.easeOut,boton_mc.x,boton_mc.x-120,1,true);
         stop();
         break;
      case MouseEvent.MOUSE_OUT :
var boton_over:Tween=new  Tween(boton_mc,"x",Elastic.easeOut,boton_mc.x,boton_mc.x=10,1,true);
         break;
      //case MouseEvent.CLICK :
         //break;
   }
}


Con este codigo, tu boton se desplazaria desde la posición en que está alojado en el stage (x=10) hasta una posición x-120, al hacer MOUSE_OVER, te volveria a la posición inicial x=10;

Recuerda que si quieres utilizar la sentencia Elastic, Bounce, etc... (por cierto son muy chulas), solo tienes que colocar este codigo arriba del todo.

Código ActionScript :

import fl.transitions.Tween;
import fl.transitions.easing.*;

Por kodama

99 de clabLevel

1 tutorial

Genero:Masculino  

Diseñador Web Freelance

safari
Citar            
MensajeEscrito el 14 May 2010 01:31 pm
Gracias por la respuesta, voy a probar éste código también, para ver con cuál me quedo.

Por ferru11

3 de clabLevel



 

firefox

 

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