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

Вниз

Вопрос про мышь   Найти похожие ветки 

 
dim-   (2003-03-22 19:47) [0]

В dll надо написать обработку событий мыши (клики и координаты), как узнать на каком компоненте произошел клик или текущие кооординаты если dll подключила другая программа и активизировала обработку мыши


 
DrPass   (2003-03-22 20:18) [1]

SetWindowsHookEx позволит узнать тебе координаты и виндовый дескриптор контрола, получившего мышиное событие. О том, какая это компонента, и компонента ли это вообще, ты не узнаешь - для винды нет такого понятия


 
dim-   (2003-03-22 21:08) [2]

Нашел в факе:
function SetHook:Boolean;
begin
if HookedAlready then exit;
ourHook:=SetWindowsHookEx(WH_MOUSE,@HookProc,HInstance,0);
HookedAlready:=True;
end;

ставит хук

function HookProc(Code:integer; wParam: Word; lParam: Longint): Longint;
begin
if (wParam=WM_LBUTTONDOWN) then MessageBeep(0);
result:=CallNextHookEx(ourHook,Code,wParam,lParam);
^^^^^^^^^^^^^^^^^^^^^^^^^^^^а в этой зависает
end;


 
DrPass   (2003-03-22 21:22) [3]

Почему зависает, сказать трудно - возможно, просто не нужно было указывать дескриптор модуля (если HookProc в той же проге, что и SetWindowsHookEx, то дескриптор не указывается)
SetWindowsHookEx(WH_MOUSE,@HookProc,0,0);
В крайнем случае просто убери CallNextHookEx, прога все равно будет работать


 
dim-   (2003-03-23 00:20) [4]

не будет, а зависало надо было вызывать "function HookProc" как stdcall, но на других окнах она не реагирует (при щелчке на експлорере вобще перегружает експлорер), а надо чтобы обрабатывались нажатия на других программах


 
dim-   (2003-03-24 14:01) [5]

А все-же, как можно из dll отловить события мышки над формой вызвовшей эту dll?



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

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

Наверх





Память: 0.45 MB
Время: 0.006 c
4-70566
Вадим
2003-03-23 23:37
2003.05.22
unicode & clipboard


14-70450
sorry
2003-04-30 20:17
2003.05.22
Атипичная пневмония ?! Что скрывают ?!


14-70453
aga
2003-05-01 16:59
2003.05.22
Ftp-server


3-70104
gnat
2003-04-29 06:49
2003.05.22
Shadow для IB


9-70081
Crazy Max
2002-12-14 17:34
2003.05.22
2-х оконное приложение на OpenGl





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский