Para la parte de mover los formularios:
Código:
interface
type
TForm1 = class(TForm)
private
procedure WMMove(var Message: TWMMove); message WM_MOVE;
end;
implementation
procedure TForm1.WMMove(var Message: TWMMove);
begin
inherited;
if Assigned(Form2) then
begin
Form2.Left := Left;
Form2.Top := Top + Height;
end;
end;
end.
// Saludos