Comunidad de diseño web y desarrollo en internet online

Problemas con Drag and Drop

Citar            
MensajeEscrito el 01 Sep 2008 04:20 pm
Hola a todos!
Estoy haciendo una pequeña aplicación en flash en la que hay varios mc (9 exactamente) y varias imágenes, estas imágenes se han de poder colocar en cualquiera de los 9 mc por medio de un drag, hasta aquí todo bien, puedo hacer que una imagen concreta se coloque en un mc concreto, pero se ha de poder poner en cualquiera de los nueve y ahi es donde viene el problema. :shock: :shock: :shock:

Este es el código que estoy usando:

Código :

var counter:Number = 0;
var woodSound:Sound = new Sound();
woodSound.attachSound("woodblock");

onEnterFrame = function ():Void {
   if (counter == 4) {
   }
};

marlboro.onPress = function():Void  {
   this.startDrag(true);
   this.swapDepths(this.getNextHighestDepth());
   xstart = this._x;
   ystart = this._y;
};
marlboro.onRelease = function():Void  {
   this.stopDrag();
   if (eval(this._droptarget) == plA) {
      this.enabled = false;
      this._x = 129;
      this._y = 133;
   } else {
      //reply_txt.text="No, keep trying!";
      this._x = xstart;
      this._y = ystart;
   }
};

marlboro.onRelease = function():Void  {
   this.stopDrag();
   if (eval(this._droptarget) == plB) {
      this.enabled = false;
      this._x = 164;
      this._y = 133;
   } else {
      this._x = xstart;
      this._y = ystart;
   }
};

marlboro.onRelease = function():Void  {
   this.stopDrag();
   if (eval(this._droptarget) == plC) {
      this.enabled = false;
      this._x = 197;
      this._y = 133;
   } else {
      this._x = xstart;
      this._y = ystart;
   }
};



marlboro es la imagen
plA, plB, plC son los mc que han de contener a la imagen

AYUDA PLEASE :cry: :cry: :cry:

Por Fusel

Claber

339 de clabLevel



Genero:Masculino  

Madrid (España)

safari
Citar            
MensajeEscrito el 01 Sep 2008 06:23 pm
El último marlboro.onRelease sobreescribe los anteriores, usa uno solo

Código ActionScript :

marlboro.onRelease = function():Void  {
   this.stopDrag();
   var t = eval(this._droptarget) 
   if ((t == plA) || (t == plB) || (t == plC)) {
      this.enabled = false;
      this._x = t._x;
      this._y = t._y;
   } else {
      this._x = xstart;
      this._y = ystart;
   }
};


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 02 Sep 2008 07:07 am
Mil gracias solisarg :wink:
La verdad es que imaginaba que era algún problema de que se pisaban los códigos, pero no sabia como solucionarlo, muchas gracias!!

Por Fusel

Claber

339 de clabLevel



Genero:Masculino  

Madrid (España)

safari
Citar            
MensajeEscrito el 08 Sep 2008 12:09 pm
Ahora estoy intentando que al soltar una imagen en un mc concreto me rellene un campo de texto.. pongo un ejemplo porque no se si me explico:

Quiero que al soltar marlboro en plA, la casilla de texto se rellene con "marlboro A" y estoy usando el siguiente código:

Código :

marlboro.onPress = function():Void  {
   this.startDrag(true);
   this.swapDepths(this.getNextHighestDepth());
   xstart = this._x;
   ystart = this._y;
};
marlboro.onRelease = function():Void  {
   this.stopDrag();
   this._parent.pedido.planograma.text = "jajajajaj";
   var t = eval(this._droptarget);
   if ((t == plA) || (t == plB) || (t == plC) || (t == plD) || (t == plE) || (t == plF) || (t == plG) || (t == plH) || (t == plI)) {
      this.enabled = false;
      this._x = t._x;
      this._y = t._y;
   } else {
      this._x = xstart;
      this._y = ystart;
   }
   if (t == plA) {
      this._parent.pedido.planograma.text = "marlboro A";
   }
};


pero no funciona :crap: :crap:

Por Fusel

Claber

339 de clabLevel



Genero:Masculino  

Madrid (España)

safari
Citar            
MensajeEscrito el 08 Sep 2008 02:46 pm
Traza el destino a ver que no te de undefined:

trace(this._parent.pedido.planograma)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 08 Sep 2008 03:13 pm
Si lo trazo (no se si se dice así) me sale lo que quiero "marlboro A, porque no funciona en el text?¿

Por Fusel

Claber

339 de clabLevel



Genero:Masculino  

Madrid (España)

safari
Citar            
MensajeEscrito el 08 Sep 2008 03:31 pm
¿El texto está detrás de una máscara? ¿Embebiste la tipo?

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Sep 2008 07:52 am
Pues ni embebiendo el texto.... :meditar: :meditar:
Es raro, lo he sacado en medio del escenario, fuera de clips, sin mascaras y nada...

Por Fusel

Claber

339 de clabLevel



Genero:Masculino  

Madrid (España)

safari
Citar            
MensajeEscrito el 10 Sep 2008 09:36 am
Pada dirimir si es visibilidad o probblema de rutas ...

[as]
if (t == plA) {
this._parent.pedido.planograma.text = "marlboro A";
trace( this._parent.pedido.planograma.text)
}

Si el texto sale correcto, entonces el problema es de visibilidad (por algún problema el texto no se ve) o sobreescritura (estás asignando otro texto o nada a la caja, repites nombres de instancia, etc)

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Sep 2008 09:58 am
Me da undefined

Por Fusel

Claber

339 de clabLevel



Genero:Masculino  

Madrid (España)

safari
Citar            
MensajeEscrito el 10 Sep 2008 10:03 am
Entonces hay un problema de rutas o no es un Textfield dinámico

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 10 Sep 2008 10:21 am
En efecto era un problema de rutas, al final con rutas absolutas funciona, aunque no lo entiendo, pero funciona..
Mil gracias solisarg, eres un master!! :alabado: :alabado: :alabado: :alabado:

Por Fusel

Claber

339 de clabLevel



Genero:Masculino  

Madrid (España)

safari

 

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