Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Traspaso de parent con efecto visual (https://www.clubdelphi.com/foros/showthread.php?t=84669)

Comandant 19-11-2013 21:20:41

Traspaso de parent con efecto visual
 
Hola a todos tengo más que un problema una duda:cool: y es que si se puede pasar el parent de un componente(por ej un timage) contenido en un scrollbox al form con el efecto visual de arrastre. Porque al arrastrarlo es como que queda por detrás del form(o mejor dicho se mueve en el scrollbox fueras del width). Por las dudas a los componentes los muevo en tiempo de ejecución con el Sender. O tendría que repintarlo al moverlo? pero me parece ineficiente. Gracias

Comandant 19-11-2013 21:46:03

Lo curioso es que en tiempo de desarrollo se logra el efecto deseado(mousedown y move) aunque obviamente al soltarlo se acomoda en el scrollbox(mouseup) pero me pregunto como es que aquí respeta el dibujado del componente. Bueno es una duda y si tienen alguna propuesta para abarcarlo de otra forma mejor. Gracias manes Saludos

Neftali [Germán.Estévez] 20-11-2013 11:52:34

¿Podrías poner un pequeño proyecto de ejemplo?
Personalmente no me acabo de hacer a la idea de lo que intentas.

De esa forma también ayudarías a quien quiera probarlo, a que le sea más sencillo ver lo que necesitas.

Comandant 21-11-2013 20:40:37

OK lo hare sencillo:

Código:

var
MousePos: TPoint;
Image: TImage;
...
Image:= TImage.Create(self);
Image.Parent:= ScrollBox1;

...
Evento MouseMove
var
  P: TPoint;
begin
  GetCursorPos(P);
  if ssLeft in Shift then
    with (Sender as TImage) do
    begin
      Top:= Top + (P.Y - MousePos.Y);
      Left:= Left + (P.X - MousePos.X);
    end;
  MousePos:= P;

y lo que quiero es moverlo por todo el form sin que se tape ya que el parent esta con el scrollbox y estaba viendo si no hay algún procedimiento sent to Front para moverlo delante de todos los objetos. O otra opción que veía es hacer un cursor con la imagen pero nose que me proponen?.

Comandant 21-11-2013 20:53:03

Aclaro que puse traspaso de parent debido a que si un usuario mueve el componente(en este caso la imagen) fuera del scrollbox el parent cambie al formulario pero quisiera saber si se puede tener ese efecto visual de arrastre. Gracias manes

Comandant 21-11-2013 21:43:06

Encontré algo interesante y es que cuando pongo dragkind en dkdock y dragmode en dkAutomatic casi casi logra lo que toy buscando salvo que se pone un recuadro y que cuando suelto instantáneamente me crea otra ventana con el objeto. Veo que voy por el buen camino


La franja horaria es GMT +2. Ahora son las 14:11:52.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi