PDA

Ver la Versión Completa : Traspaso de parent con efecto visual


Comandant
19-11-2013, 21:20:41
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:


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