Comunidad de diseño web y desarrollo en internet online

Definir Área de Drageo AS3

Citar            
MensajeEscrito el 14 Ago 2009 08:51 pm
Hola a todos!

Tengo un problema. Programé un zoom para un movieclip en AS3 y como al aumentar de tamaño se sale del área visible, se activa una función para dragearlo. Ahora el problema es que al dragearlo se ve puede ver el fondo.

Aquí les dejo una imagen para que me entiendan mejor:



La parte que raye con rojo ( :lol: ) es el fondo, como ven el movieclip se puede dragear por cualquier parte y se puede ver el fondo, lo que necesito es darle un limite al drageo.

PD: Se ve así de feo porque es un "borrador", no es el diseño original :lol:.

Espero que me ayuden!

De ante mano gracias! ^^

Por joel_fox

28 de clabLevel



Genero:Masculino  

Yo soy yo.

firefox
Citar            
MensajeEscrito el 14 Ago 2009 10:34 pm
Pudes usar la clase Rectangle , la cual hace eso un rectangulo en el cual le das las dimesiones que seran el limite ,para que el movieClip no se salga de los limites , este objeto Rectangle se lo pasas como parametro al metodo startDrag() del moviClip, seria algo asi codigo:

Código ActionScript :

//en este caso los limites son el ancho y el alto del stage
var limiteDrag:Rectangle = new Rectangle(0,0,stage.stageWidth,stage.stageHeight);

function mouseDownHandler(e:Event):void
{
   e.target.startDrag(false,limiteDrag);
   stage.addEventListener(MouseEvent.MOUSE_UP,mouseUpHandler);
   
}
function mouseUpHandler(e:Event):void
{
   e.target.stopDrag();
   stage.removeEventListener(MouseEvent.MOUSE_UP,mouseUpHandler);
   
}

clipDrag.addEventListener(MouseEvent.MOUSE_DOWN,mouseDownHandler);


espero te sirva amigo, Saludos

Jonathan

Por maneuver

243 de clabLevel



Genero:Masculino  

Mexico City

chrome
Citar            
MensajeEscrito el 14 Ago 2009 11:21 pm
creo que el codigo mas bien seria asi :

Código ActionScript :

//en este caso los limites son el ancho y el alto del stage
var limiteDrag:Rectangle = new Rectangle(0,0,stage.stageWidth - clipDrag.width,stage.stageHeight-clipDrag.height);

function mouseDownHandler(e:Event):void
{
   e.target.startDrag(false,limiteDrag);
   stage.addEventListener(MouseEvent.MOUSE_UP,mouseUpHandler);
   
}

function mouseUpHandler(e:Event):void
{
   clipDrag.stopDrag();
   stage.removeEventListener(MouseEvent.MOUSE_UP,mouseUpHandler);
   
}

clipDrag.addEventListener(MouseEvent.MOUSE_DOWN,mouseDownHandler);


perdon eso pasa por tomar tanto cafe :lol:

Por maneuver

243 de clabLevel



Genero:Masculino  

Mexico City

chrome
Citar            
MensajeEscrito el 15 Ago 2009 05:11 pm
Muchas Gracias jn_Flash, funciona a la perfección. Ahora sólo debo buscar una forma de modificar el área de restricción cada vez que cambie de tamaño el MovieCLip.

Muchas Gracias ^^!

Por joel_fox

28 de clabLevel



Genero:Masculino  

Yo soy yo.

firefox

 

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