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

Вниз

Как узнать "хуковое") окно ???   Найти похожие ветки 

 
juiceman ©   (2004-04-07 11:34) [0]

Ставлю хуки на клавиатуру, мышь (одинарный и двойной клики). Как узнать в каком из главных окон он произошел и в каком его дочернем окне ????


 
Diamond Cat ©   (2004-04-07 23:30) [1]

обычно в мышиных сообщениях есть координаты в которых происходят действия, по ним с помощью windowfrompoint & cildwindowfrompoint можно узнать на каком окне/контроле произощел клик, или же если вы используете хук wh_mouse, то ипользуя указатель на lparam сообщения в структуре TMOUSEHOOKSTRUCT  можно получить хендл принимающнго окна что-то типа TMOUSEHOOKSTRUCT(Pointer(Lparam)^).hwnd


 
juiceman ©   (2004-04-08 02:48) [2]

Вариант с windowfrompoint & cildwindowfrompoint я оставлял на крайний случай. А по поводу TMOUSEHOOKSTRUCT(Pointer(Lparam)^).hwnd, я думал что она ссылается на главное окно ... Спасибо, проверил на практике - все отлично, параметр содержит дескриптор конкретного окна. Как быть с клавиатурой я не знаю, это уже серьезнее ???


 
juiceman ©   (2004-04-08 06:33) [3]

Могу уточнить вопрос. Есть окно, знаю его дескриптор. При отлове сообщения о нажатии клавиши (с мышью уже разобрались) надо узнать , нажата ли она в нем или нет ??? Т.е. задача расчитана под определенное окно, все окна в системе отслеживать не надо.


 
Diamond Cat ©   (2004-04-08 23:04) [4]

GetFocus может помочь отцу русской демократии?
соответствено придется поморочиться с AttachThreadInput, а то хрен чего получиться с чужими окнами


 
juiceman ©   (2004-04-13 10:46) [5]

Помогло, спасибо.



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

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

Наверх




Память: 0.48 MB
Время: 0.055 c
3-1083925335
vic1
2004-05-07 14:22
2004.05.30
Выборка неупорядоченных записей


3-1083776286
leonidus
2004-05-05 20:58
2004.05.30
Как обратиться к dBase-файлу базы данных если он на другом компе?


1-1084586814
IrBisoff
2004-05-15 06:06
2004.05.30
Немного глуповат вопрос, но StrLeft не обрабатывает строку.


6-1081766625
Floppy
2004-04-12 14:43
2004.05.30
Как можно произвести Refresh сетевого окружения в локальной сети?


14-1083774019
RealRascal
2004-05-05 20:20
2004.05.30
Геометрия