API do Window - Programação avançada

Delphi

12/02/2003

Ola Pessoal.

O código abaixo traz todas as janelas abertas visiveis e que não tem pai(Parent), mas ele também traz as janelas tipo POPUP, que estão no SysTray, para constatar isso rode seu programa com essa rotina e vc verá um Project1 e um Form1, ambos se relacionam ao mesmo programa. Gostaria de listar apenas as janelas principais com o Alt+Tab faz, se alguem por me ajudar eu agradeço desde já.

function EnumWindowsProc(Wnd : HWnd;Form : TForm1) : Boolean; Export; {$ifdef Win32} StdCall; {$endif}
var
Buffer : Array[0..99] of char;
begin
GetWindowText(Wnd,Buffer,100);
if IsWindowVisible(Wnd) and (GetParent(Wnd) = 0) and (StrLen(Buffer) <> 0) then
Form.ListBox1.Items.Add(StrPas(Buffer));
Result := True;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
EnumWindows(@EnumWindowsProc,LongInt(Self));
end;

Stéfano Santos - stefano@fc.unesp.br


Anonymous

Anonymous

Curtidas 0
POSTAR