Вниз
Скачать: CL | DM;

Нажатие кнопки в чужом окне   Найти похожие ветки 

 
Грифон ©   (2002-06-18 01:22) [0]

Скажите, как можно нажать кнопку в чужом окне, т.е. моя прога находит окно с Caption = "proga", в этом окне есть кнопка с caption = "Ok". Так вот нужно сделать так, чтобы происходило нажатие этой кнопки из моей проги. Подскажите какое сообщение нужно послать тому окну.


 
rhf ©   (2002-06-18 01:35) [1]

теперь найди эту кнопку .... ее handle и пошли BM_CLICK


 
Грифон ©   (2002-06-18 01:36) [2]

А как найти её?


 
rhf ©   (2002-06-18 02:06) [3]

блин....ну вы хоть малость усилий приложите...для чего голова дана........

если кнопка точно есть и она прямо на главном окне да еще и надпись на ней уникальна среди остальных элементов, то так

const allDone:boolean= FALSE;
var
h:HWND;
buf:array[0..255] of char;

h:=findWindow(pchar("заголовок"),nil);
h:=getWindow(h,GW_CHILD);
while (h<>0)or (not allDone) do
begin
getWindowText(h,buf,sizeOf(buf));
if string(buf)="текст на кнопке" then
begin
sendMessage(h,BM_CLICK,0,0);
allDone:=TRUE;
end;
h:=getWindow(h,GW_HWNDNEXT)
end;

иначе надо смотреть класс окна с хендлом (getClassName) и сравнивать с классом твоей кнопки. Ну а если она может и еще в каком-то контейнере быть, то либо выясни точно где она, либо просмотри все дочернии окна ну и так далее...

p.s. за синтаксис не отвечаю......не проверял


 
Грифон ©   (2002-06-19 04:25) [4]

Спасибо все работает. Только в строке
h:=findWindow(pchar("заголовок"),nil);
параметры нужно местами поменять.


 
Andrew_k ©   (2002-06-19 16:06) [5]

Люди, а если перечислять все окна, то как найти кнопку, т.е. использовать FindWindowEx, а кнопок две, то как найти ту, что надо?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.014 c
1-71110
kull
2002-08-12 18:58
2002.08.22
Перхват вызова функций DLL?


1-71097
Aleksandr
2002-08-12 16:45
2002.08.22
Как свернуть программу, чтобы в ТаскБаре не светилась?


1-71258
oguz
2002-08-12 10:12
2002.08.22
Как сделать ссылку на сайт(e-mail) в Delphi


6-71300
Corte ™
2002-06-10 07:29
2002.08.22
Помогите!!!!


1-71072
VELK
2002-08-09 09:01
2002.08.22
Помогите !!!! Программа написана на Delphi 4 и её не возможно




   Наверх