segunda-feira, 26 de maio de 2008

GetWindowRect

A quem interessar possa:

Para determinar a localização de um formulário, utilize-se da função GetWindowRect.

Um código mais ou menos útil é o que se segue:

procedure TfLocalizador.Processar;
var
alca     : HWND;    //Handle para a janela
posicoes : TRect;   //Informações que serão retornadas
res      : Boolean; //Resultado da função
begin
try
case Self.rgTipo.ItemIndex of
0 : alca := FindWindow(PChar(Self.eProcurado.Text),nil);
1 : alca := FindWindow(nil,PChar(Self.eProcurado.Text));
end;
res := GetWindowRect(alca,posicoes);
if (res)
then Self.mLog.Lines.Add(Format('(%s) Left: [%d] Top: [%d] Right: [%d] Bottom: [%d]',[Self.eProcurado.Text,posicoes.Left,posicoes.Top,posicoes.Right,posicoes.Bottom]))
else Self.mLog.Lines.Add('Houve algum erro...');
except
on E : Exception do
begin
Self.mLog.Lines.Add(Format('(%s) - %s',[E.ClassName,E.Message]));
end;
end;
end;

Minha lista de blogs