Si quieres simplificarte, no trabajes con los eventos VCL, captura el mensaje WM_WINDOWPOSCHANGED con un procedimiento tal que así:
Código Delphi
[-]procedure WMWindowPosChanged(var Message: TWMWindowPosChanged); message WM_WINDOWPOSCHANGED;
procedure TForm1.WMWindowPosChanged(var Message: TWMWindowPosChanged);
begin
SetWindowPos(Handle, GetBackForm(self).Handle, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE);
end;
Sería el equivalente al código que anteriormente puse, sólo que lo hice en el
WndProc(var Message: TMessage); para manejar varios mensajes en un sólo procedimiento.
Saludos.