uses Math;
procedure TremerForm(Form: HWND);
var
R: TRect;
x: integer;
Esq, Topo: integer;
begin
{ Coordenadas do formulário }
GetWindowRect( Form, R );
for x := 0 to 45 do
begin
{ Gera as posições aleatórias }
Esq := RandomRange( -7, 7 );
Topo := RandomRange( -7, 7 );
{ Atribui a nova posição do formulário }
SetWindowPos( Form, 0, R.Left + Esq, R.Top + Topo, R.Right - R.Left, R.Bottom - R.Top, 0 );
{ Tempo para mostrar que está tremendo o formulário }
Sleep(20);
end;
{ Retorna a posição do formulário }
SetWindowPos( Form, 0, R.Left, R.Top, R.Right - R.Left, R.Bottom - R.Top, 0 );
end;
Espero ter colaborado.