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

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

Поиск edit и button в чужом окне [D5, Win2k]


Sapsi ©   (2004-04-02 09:55:00) 

Какая функция позволяет получить Хэндл editов и buttonов в чужом окне?
Спасибо.


lock95   (2004-04-21 18:00:00) [1]

heEdit:= FindWindowEx(header,0,'Tedit',nil);


Игорь Шевченко   (2004-04-02 13:51:00) [2]

sapsi   (02.04.04 13:47)

Мы долго будем в телепатов играть ?
Код давай. Обоих форм, той, что ищется и той, что ищет


sapsi   (2004-04-02 13:47:00) [3]

была


Игорь Шевченко   (2004-04-02 13:42:00) [4]

Sapsi   (02.04.04 13:23)

А у тебя на той форме, которая ищет, есть кнопка с именем Button1 ? :)


Sapsi   (2004-04-02 13:23:00) [5]

2 Игорь Шевченко
Так тогда не 0 был бы - не так ли?


Игорь Шевченко   (2004-04-02 13:12:00) [6]

А у второй программы форма тоже TForm1 называется ?

Так она себя находит :))))))))


VMcL   (2004-04-02 13:11:00) [7]

>>Sapsi  (02.04.04 10:11) [2]

Только сейчас обратил внимание, что у тебя в имени класса единица добавлена:
ChildHandle:= FindWindowex(parentwindow,0, 'tbutton1',0)

Вдобавок, если мне не изменяет склероз, то имя класса чувствительно к регистру символов.

См. [6].


Sapsi   (2004-04-02 13:09:00) [8]

Первая программа:
Обычная форма Делфи. с одним едитом и одним Buttonом
type
 TForm1 = class(TForm)
   Button1: TButton;
   Edit1: TEdit;

ВТорая программа: (которая собственно и ищет окна первой)
Хэндл формы находит, он ненулевой,
hwnd := FindWindow ('tform1', 0);
if hwnd <> 0 then
Caption:=IntToStr(FindWindowEx(hwnd, 0, 'tbutton', 0));

возвращает
caption = 0


MBo   (2004-04-02 13:05:00) [9]

Посмотри WinSight-ом (ws32.exe в DELPHI\BIN), какой класс у твоей кнопки


Sapsi   (2004-04-02 13:01:00) [10]

Возвращает 0.


MBo   (2004-04-02 12:49:00) [11]

Caption:=IntToStr(FindWindowex(AHandle,0,'TButton',0));
возвращает ненулевой хэндл (вторая программа с дельфийской кнопкой)


Sapsi   (2004-04-02 12:44:00) [12]

1. Parenthandle<>0
2. Ноль возвращает в любом случае


VMcL   (2004-04-02 12:11:00) [13]

>>Sapsi  (02.04.04 11:36) [3]

1. Чему равен parenthandle?
2. Уверен, что класс кнопки 'TButton'? Я думаю, что наверное, 'BUTTON'.


Sapsi   (2004-04-02 11:36:00) [14]

Например, ищу Хэндл Button1 вот так:
BtnWnd:=FindWindowEx(parenthandle, 0, 'Tbutton', nil);
Получаю 0.
В чем проблема?


Sapsi   (2004-04-02 10:11:00) [15]

Правильно ли я делаю, если хочу найти Button1 на форме с хэндлом parentwindow?

ChildHandle:= FindWindowex(parentwindow,0,'tbutton1',0) Что я должен указать вторым параметром?


MBo   (2004-04-02 09:59:00) [16]

FindWindowEx
или
EnumChildWindows


Наверх

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