Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2005.11.06;
Скачать: [xml.tar.bz2];

Вниз

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

 
Руслан   (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 вся ветка

Форум: "WinAPI";
Текущий архив: 2005.11.06;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.034 c
9-1118496600
Cerberus
2005-06-11 17:30
2005.11.06
Cоздание RPG


2-1129024587
Dude
2005-10-11 13:56
2005.11.06
Excel и Delphi


1-1129545468
DeStranger
2005-10-17 14:37
2005.11.06
Модальное окно теряет фокус


14-1129612619
Ega23
2005-10-18 09:16
2005.11.06
С днем рождения! 18 октября


14-1129121709
Сергей Орлик
2005-10-12 16:55
2005.11.06
Delphi 2006 or C++Builder 2006 or C#Builder 2006 = BDS 2006





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский