![]() |
|
#1
|
|||
|
|||
![]() Всем доброго времени суток!
Появился 1 вопросик небольшой - скорее всего уже замусоленный и изжеванный, но всё же... Суть такова - есть прога, которая показывает какие окна открыты. Тут всё банально (в сети такого добра навалом) Код:
procedure TForm1.Button1Click(Sender: TObject); var wnd: hwnd; buff: array [0..127] of char; begin ListBox1.clear; wnd := GetWindow(handle, gw_hwndfirst); while wnd <> 0 do begin if (wnd <> Application.Handle) and IsWindowVisible(wnd) and (GetWindow(wnd, gw_owner) = 0) and (GetWindowText(wnd, buff, SizeOf(buff)) <> 0) then begin GetWindowText(wnd, buff, SizeOf(buff)); ListBox1.Items.Add(StrPas(buff)); end; wnd := GetWindow(wnd, gw_hwndnext); end; ListBox1.ItemIndex := 0; end; Но дальше возникает вопрос. В огнелисе открыты несколько вкладок (что характерно - каждая со своим названием), а в указанном выше коде в списке отображается название только одной из вкладок. Как-нибудь можно определить остальные вкладки? |
#2
|
|||
|
|||
![]() Попробуй EnumChildWindow. Но не уверен, что там закладки сделаны как окна...
|
#3
|
|||
|
|||
![]() Спасибо за подсказку.
Вроде помогло... в ИЕ правда и через раз почему-то. Но если доработать напильником - всё будет зашибись |