El icono, y dos labels asociados, los muevo con los eventos OnMouseDown, OnMouseMove y OnMouseUp :
Código Delphi
[-]procedure TMainform.Icon01MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Dragging := True;
DragPoint := Point(X, Y);
end;
procedure TMainform.Icon01MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if Dragging then begin
Icon01.Left := Icon01.Left + X - DragPoint.X;
Icon01.Top := Icon01.Top + Y - DragPoint.Y;
Label01a.Left := Icon01.Left - 34;
Label01a.Top := Icon01.Top + 34;
Label01b.Left := Icon01.Left - 34;
Label01b.Top := Icon01.Top + 48;
end;
end;
procedure TMainform.Icon01MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Dragging := False;
end;
El TImage tiene cargada una imagen JPG, y la propiedad Strech := True, con el TImagen ocupando todo el fondo del form MDIForm principal, con la propiedad Align := alClient;