Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Список форм


_NoS_ ©   (2003-07-10 16:49:00) 

Подскажите люди добрые как мне получить список всех открытых форм и размещенных на них всяких label"ов, edit"ов и т.д.


Song   (2003-07-16 16:17:00) [1]

Это ф-ии АПИ


_NoS_   (2003-07-16 13:42:00) [2]

Song, что значит "EnumWindows()+EnumChildWindows()"?


Song   (2003-07-12 19:54:00) [3]

EnumWindows()+EnumChildWindows()


Spawn   (2003-07-12 18:35:00) [4]

ну например так. Только тебе нужно самому отделять куда какие хендлы относятся:


Wnd := GetWindow(Form1.Handle, gw_HWndFirst);
while Wnd <> 0 do
begin
if (Wnd <> Application.Handle) then
//Делаешь что то
if (GetWindow(Wnd, gw_Owner) = 0) then
//Делаешь что то
( Wnd, gw_hWndNext)

ну например так. Только тебе нужно самому отделять куда какие хендлы относятся:


Wnd := GetWindow(Form1.Handle, gw_HWndFirst);
while Wnd <> 0 do
begin
if (Wnd <> Application.Handle) then
//Делаешь что то
if (GetWindow(Wnd, gw_Owner) = 0) then
//Делаешь что то
Wnd := GetWindow(Wnd, gw_hWndNext);
end;

Обрати внимание также и на такие функции как IsWindow(), IsWindowWisible(), IsZoomed(), IsChild() и т.д. По идее можно ето еще сделать путем поиска окон через EnumWindows+FindWindowEx(Для нахождения хендлов контролов окна, если EnumWindows этого не дает, а то щас не помню:)) )


_NoS_   (2003-07-12 16:21:00) [5]

Spawn, что значит "GetWindow+GW_HWNDFIRST+GW_HWNDNEXT"?


Spawn   (2003-07-10 22:00:00) [6]

GetWindow+GW_HWNDFIRST+GW_HWNDNEXT


clickmaker   (2003-07-10 17:06:00) [7]

Screen.Forms
Form.Controls


Наверх

Титульная страница Поиск, карта сайта Написать письмо