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

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

Как определить HANDLE гл.формы и ее дочерних форм?


mikka ©   (2005-09-01 12:59:00) 

Как определить HANDLE гл.формы и ее дочерних форм?
Т.е. имеется гл.форма и в ней открываются другие формы.

Хэндл гл. формы опредить можно так:
FindWindow("TMainForm",NULL);

А как определить хендлы дочерних форм?


Digitman   (2005-09-01 16:47:00) [1]


> ANB ©   (01.09.05 16:00) [12]
> понятно, чего автор хотел.


мне НЕ понятно.


ANB   (2005-09-01 16:37:00) [2]


> Игорь Шевченко ©   (01.09.05 16:09) [14]
- просто повтор действий пользователя не сильно подходит. К тому же через keybd_event все работает, но компутером пользоваться при этом нельзя.


Игорь Шевченко   (2005-09-01 16:09:00) [3]

ANB ©   (01.09.05 16:01) [13]

Я в свое время занимался тестированием. Работал через WH_JOURNALRECORD и WH_JOURNALPLAYBACK


ANB   (2005-09-01 16:01:00) [4]


> Digitman ©   (01.09.05 15:54) [11]
- лучше подскажи, в какую сторону рыть, чтобы сэмулировать нажатие Tab и сочетаний клавиш с помощью сообщений (моя ветка ниже).


ANB   (2005-09-01 16:00:00) [5]


> Digitman ©   (01.09.05 15:54) [11]
- да забей. Все равно понятно, чего автор хотел.


Digitman   (2005-09-01 15:54:00) [6]


> ANB ©   (01.09.05 15:39) [10]


угу .. но не наоборот


ANB   (2005-09-01 15:39:00) [7]


> Digitman ©   (01.09.05 15:14) [9]
- ну все формы то, которые видны (да и невидимые, но созданные) в конце концов являются окнами.


Digitman   (2005-09-01 15:14:00) [8]


> mikka   (01.09.05 14:05) [6]


откуда "другое" приложение знает, что в "не другом" приложении есть какие-то там "формы" ?

ты понимаешь концептуальную разницу и взаимосвязь между "формой" и "окном" ? в т.ч. применительно к Делфи ? или для тебя что ни окно, которое видишь на экране, то сразу формой является ?


mikka   (2005-09-01 14:15:00) [9]

понятно


ANB   (2005-09-01 14:13:00) [10]

Эти формы являются окнами верхнего уровня. Ищутся так же, как и главное и с точки зрения виндовс ничем особым от него не отличаются. Если нужно отследить все окна одного приложения, то нужно узнать ProcessID и перебрав окна с помощью EnumWindows выбрать принадлежащие нужному процессу.

ЗЫ. Чего так много народу другими приложениями пытаются управлять ? Автоматизируют тестирование ?


mikka   (2005-09-01 14:05:00) [11]

>КТО, ГДЕ и в КАКОМ месте твоего алгоритма должен иметь сабж ?

Из другого приложения нужно отследить все диалоговые окно открытые из гл. формы


Digitman   (2005-09-01 13:43:00) [12]


> mikka   (01.09.05 13:02) [2]


бред какой-то ..

КТО, ГДЕ и в КАКОМ месте твоего алгоритма должен иметь сабж ?


mikka   (2005-09-01 13:41:00) [13]

эт я понял что они не дочерние и с помошью
GetChildWindows() хендлы диалоговых окно не получить

Но тогда как получить?


Игорь Шевченко   (2005-09-01 13:36:00) [14]


> из. главной формы открываются модальные диалоговые окна.
> их хендлы и нужно получить, отталкиваясь от гл.формы.


А с какой стати они будут дочерними ?


mikka   (2005-09-01 13:02:00) [15]

из. главной формы открываются модальные диалоговые окна.
их хендлы и нужно получить, отталкиваясь от гл.формы.


ANB   (2005-09-01 13:01:00) [16]


> mikka   (01.09.05 12:59)
в каком смысле дочерние ? MDIChild ?


Наверх

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