Hola,
Código Delphi
[-]
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var
dx,dy : integer;
begin
dx := form1.Left - otraform.left;
dy := form1.Top - otraform.Top;
if Button = mbLeft then
begin
ReleaseCapture;
SendMessage(Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
end;
otraform.Left := Form1.Left - dx;
otraform.Top := Form1.top - dy;
end;
seria algo asi: coger la distancia primera entre las forms, y una vez movida la principal, recolocar la segunda la misma distancia. A ver si te sirve, un saludo.