Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.06;
Скачать: CL | DM;

Вниз

Посылка сообщения   Найти похожие ветки 

 
Руслан   (2005-09-02 11:07) [0]

здравствуйте мастера, вот у меня какой вопорс:
как программно нажать кнопку мышки, незная наперед, какой объект будет нажат. Тоесть в таймере выставляется интервал, сворачивается прога в трей, мышка наводится на любой объект в любой проге (скажем кнопка Next в винампе или Refresh в експлорере) и по таймеру посылается сообщение этому объекту. Но вот как отыскать кому посылать??


 
wildsam   (2005-09-02 12:51) [1]

Надо получить координаты курсора (GEtCursorPos), потом определить хэндл окна под ним (WindowFromPoint) и послать ему сообщение.


 
Руслан   (2005-09-02 13:47) [2]

Определил хэндл я удачно, но сообщение то не окну надо послать а дочернему компоненту, скажем кнопке, ссылке и т.д. вот я и воспользовалься еще и ChildWindowFromPoint, вот здесь то и проблемма: возвращается 0. Я пишу так:

var Pdc,Cdc: HDC;

begin
 Pdc:= WindowFromPoint(Mouse.CursorPos);  //тут возвращает хэндл
 Cdc:= ChildWindowFromPointEx(Pdc,Mouse.CursorPos,CWP_ALL);//а тут нет, тоесть 0


или я неправильно чтото делаю???


 
Руслан   (2005-09-02 13:49) [3]

Определил хэндл я удачно, но сообщение то не окну надо послать а дочернему компоненту, скажем кнопке, ссылке и т.д. вот я и воспользовалься еще и ChildWindowFromPoint, вот здесь то и проблемма: возвращается 0. Я пишу так:

var Pdc,Cdc: HDC;

begin
 Pdc:= WindowFromPoint(Mouse.CursorPos);  //тут возвращает хэндл
 Cdc:= ChildWindowFromPointEx(Pdc,Mouse.CursorPos,CWP_ALL);//а тут нет, тоесть 0


или я неправильно чтото делаю???


 
begin...end ©   (2005-09-02 13:53) [4]

> Руслан   (02.09.05 13:47) [2]

В ChildWindowFromPointEx должны передаваться координаты относительно родительского окна.


 
Woolen ©   (2005-09-02 14:46) [5]

Возможно я не понимаю задачи, но почему бы не нажать кнопку при помощи функции mouse_event?



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

Текущий архив: 2005.11.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.052 c
2-1129455998
Vermucht
2005-10-16 13:46
2005.11.06
Не читает файл BitMap


1-1129726945
Dush
2005-10-19 17:02
2005.11.06
Excel и Stringgrid


4-1125004126
1236434
2005-08-26 01:08
2005.11.06
ID процеса по его имени


2-1129042250
Dofin
2005-10-11 18:50
2005.11.06
Как в SQL запрос подставить значение Edit1.Text?


14-1129545597
sergg
2005-10-17 14:39
2005.11.06
Такой же по качеству ресурс о Buildere?