• Viernes 8 de Noviembre de 2024, 18:01

Autor Tema:  Drag and Drop de imagenes  (Leído 1951 veces)

gonzalipto

  • Miembro activo
  • **
  • Mensajes: 26
    • Ver Perfil
Drag and Drop de imagenes
« en: Lunes 2 de Marzo de 2009, 18:24 »
0
Hola, soy Gonzalo

Yo tengo un TImage con una imagen que es una cerradura por ejemplo, y tengo otras varias imagenes que son llaves, tengo que hacer que el usuario pueda tomar una de las llaves y arrastrarla hacia la cerradura para ver si esa llave encaja. Para ello necesito poder deslizar una imagen sobre otra y que la imagen que contiene la llave mantenga su contorno y que no sea un cuadrado..

Alguna ayuda?

Unsire

  • Nuevo Miembro
  • *
  • Mensajes: 17
    • Ver Perfil
Re: Drag and Drop de imagenes
« Respuesta #1 en: Lunes 2 de Marzo de 2009, 23:16 »
0
Tal vez el siguiente código te pueda ayudar un poco:
Código: C++
  1.  
  2. TControl* control = static_cast<TControl*>(Sender);
  3. static bool pulsado = false;
  4. static TPoint posicion;
  5.  
  6. if (!pulsado && Shift.Contains(ssLeft))
  7.     posicion = Point(X, Y);
  8.  
  9. pulsado = Shift.Contains(ssLeft);
  10. if (pulsado)
  11. {
  12.     control->Left += X - posicion.x;
  13.     control->Top  += Y - posicion.y;
  14.  
  15.  
Ponlo en el Evento OnMouseMove del objeto que quieras mover, en esta caso un TImage y para que no se vea cuadrada pon la propiedad Transparent=true;

gonzalipto

  • Miembro activo
  • **
  • Mensajes: 26
    • Ver Perfil
Re: Drag and Drop de imagenes
« Respuesta #2 en: Lunes 2 de Marzo de 2009, 23:30 »
0
Hola!

Muchisssimas Gracias!!

Anduvo a la perfeccion!!

Y otra consulta mas ahora.. Como puedo hacer para guardar la imagen de forma que ahora contenga la cerradura y la llave?? es decir que contenga la imagen de fondo y la imagen que le puse encima...

Gracias de nuevo!

gonzalipto

  • Miembro activo
  • **
  • Mensajes: 26
    • Ver Perfil
Re: Drag and Drop de imagenes
« Respuesta #3 en: Lunes 2 de Marzo de 2009, 23:39 »
0
Ahhh me olvidaba!!

Una cosa mas.. el codigo me anduvo perfecto!

pero.. podrias comentarlo un poco?? porq me cuesta entenderlo..

que es static_cast? un TControl? ssLeft? Contains.Shift??

Perdon.. pero soy medio novato en Builder..

Gracias!