После долгого поиска все-таки нашел тему на этом же форуме )). Хотя раньше искал, но не находил.
Тема: http://fire-monkey.ru/topic/1452-kak-poimat-peremeschenie-formy/
Суть решения - необходимо перекрыть виртуальный метод формы SetBounds, который выполняется каждый раз при перемещении формы
procedure TCommonCustomForm.SetBounds(ALeft, ATop, AWidth, AHeight: Integer); virtual;
Для этого в описании методов формы пишем
type
TForm1 = class(TForm)
........
procedure SetBounds(ALeft, ATop, AWidth, AHeight: integer); override;
.......
end;
и в теле процедуры выполняем необходимые действия
procedure TForm1.SetBounds(ALeft, ATop, AWidth, AHeight: integer);
begin
inherited;
if assigned(form2) then begin
form2.Left:=ALeft;
form2.top:=ATop;
end;
end;
В данном случае - присвоение второй форме координат первой.