Comunidad de diseño web y desarrollo en internet online

Duda al querer arrastrar un mc

Citar            
MensajeEscrito el 11 Jul 2011 11:19 pm
Buenas tardes amigos pues resulta que estoy atorado con este codigo lo que quiero hacer es cuando aparesca un mc en la escena pueda arrastrarlo y soltarlo pero al querer solamante arrastrarlo se arrastra hasta el boton les porgo mi codigo para que me digan en donde la estoy regando. Y si se puede me indiquen como hacerlo.

Código :

import flash.events.MouseEvent;

miBoton.addEventListener(MouseEvent.CLICK, muestra)

function muestra(evt:MouseEvent)
{ 
    var cuad:cuadrado = new cuadrado();  
   cuad.x = 36;
   cuad.y = 97;
   startDrag()
    addChild(cuad)  
}


Tambien les comento como hacerle si cuando oprima de nuevo mi boton aparesca otra mc que tengo en mi biblioteca, estoy usando AS3 y de antemano gracias.

Por stynpy

47 de clabLevel



 

safari
Citar            
MensajeEscrito el 12 Jul 2011 03:27 pm
Saludos ActionScripTiano();

Lo que Tradusco de tu codigo es lo siguiente:

Al hacer click en "miBoton" realizará la funcion muestra.
La funcion muestra proviene del evento click del objeto miBoton que tiene el siguiente detalle:

crear un objeto "cuadrado",
mover el cuadrado a posiciones x,y,
arrastrar el this "objeto padre" (es donde se encuentra tu boton y cuadrado),
adicionar al padre el objeto cuadrado,

Eso es lo que tu codigo está haciendo.


Si lo que quieres es crear un boton que cree cuadrados y que estos cuadrados esten dragleables, has de hacer lo siguiente:

Código ActionScript :

import flash.events.MouseEvent;

miBoton.addEventListener(MouseEvent.CLICK, muestra)

function muestra(evt:MouseEvent)
{ 
   var cuad:cuadrado = new cuadrado();  
   cuad.x = 36;
   cuad.y = 97;
   cuad.addEventListener(MouseEvent.MOUSE_UP,doUp);
   cuad.addEventListener(MouseEvent.MOUSE_DOWN,doDown);
   addChild(cuad)  
}

function doUp(eve:MouseEvent):void
{eve.target.stopDrag();}
function doDown(eve:MouseEvent):void
{eve.target.startDrag();}

Por WWCC

113 de clabLevel



Genero:Masculino  

Diseñador y desarrollador multimedia

chrome
Citar            
MensajeEscrito el 12 Jul 2011 06:23 pm
Gracias por responder me funciono y para ponerle un destino ya especifico para que al soltar se quede ahi insertado yo pongo este codigo pero me da error diciendo "Llamada a un método hitTestObject posiblemente no definido mediante una referencia con tipo estático Class."
El codigo que estoy empleando es el siguiente

Código :

function soltar(eve:MouseEvent):void 
{
    if(cuadrado.hitTestObject(cuadrado_D)==true)
   {
      
      cuadrado.x=cuadrado_D.x;
      cuadrado.y=cuadrado_D.y;
   }
   else
   {
      cuadrado.x=30;
      cuadrado.y=30;
   }

   eve.target.stopDrag();
} 
function arrastrar(eve:MouseEvent):void 
{eve.target.startDrag();}


Y de antemano muchas gracias.

Por stynpy

47 de clabLevel



 

safari

 

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