Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.046 c
1-1084806749
glGLU
2004-05-17 19:12
2004.05.30
ListBox


3-1083739703
Ирина
2004-05-05 10:48
2004.05.30
Вопрос по поводу того как использовать модуль


1-1085039941
Bocman
2004-05-20 11:59
2004.05.30
день и месяц из даты


11-1073682537
mdw
2004-01-10 00:08
2004.05.30
Еще сайт посвященный KOL.


6-1082019158
Ozone
2004-04-15 12:52
2004.05.30
TIdTCPServer




   Наверх