Si de lo que

se trata es de mover con el mouse, imágenes contenidas en un TImage pues puedes utilizar el evento
OnMouseMove del TImage y poner el siguiente código:
Código Delphi
[-]procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if ssLeft in Shift then
begin
Image1.left := Image1.left+x;
Image1.Top := Image1.Top+y;
end;
end;
.
En todo caso si el Componente TImage tuviera la propiedad
"Handle" pues sería mas fácil aún

, pero como no lo tiene ya que es un derivado o descendiente de la clase "
TGraphicControl", pues con el anterior código se logra el objetivo.

. En cambio todos aquellos componentes que tienen una propiedad
"Handle" pues para poder moverlo con el mouse en tiempo de ejecucion se puede utilizar el mismo evento
OnMouseMove del componente en cuestión y poner un código similar al siguiente:
Por ejemplo vamos a mover un Boton en tiempo de ejecucion:
Utilizando su respectivo evento
OnMouseMove tenemos:
Código Delphi
[-]procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
ReleaseCapture;
SendMessage(Button1.Handle, WM_SYSCOMMAND, $F012, 0);
end;
.
Eso es todo

.
POSDATA: Ustedes pueden notar la
diferencia visual entre ambos ejemplos al mover con el raton.
El primer ejemplo se puede aplicar a cualquier componente visual, pero el segundo sólo a componentes que tienen
Handle.

Saludos...
