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

Вниз

Клик мыши вне формы   Найти похожие ветки 

 
Calibr ©   (2007-01-17 18:16) [0]

Как определить что была кликнута мышь вне моего приложения и вне моего окна?


 
FAskerQ ©   (2007-01-17 18:46) [1]

var
 HookHandle: hHook;

function HookProc(Code: integer; WParam: word; LParam: Longint): Longint; stdcall;
var
 msg: PEVENTMSG;
begin
 if Code >= 0 then
 begin
   result := 0;
   msg := Pointer(LParam);
   with Form1 do
     case msg.message of
       WM_LBUTTONUP:
       begin
         if WindowFromPoint(Mouse.CursorPos) <> Form1.Handle then
           Caption:= "была кликнута мышь вне моего приложения"
         else
           Caption:= "была кликнута мышь на моем приложении"";
       end;
     end;
 end else
   result := CallNextHookEx(HookHandle, code, WParam, LParam);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 Form1.FormStyle := fsStayOnTop;
 HookHandle := SetWindowsHookEx(WH_JOURNALRECORD, @HookProc, HInstance, 0);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
 if HookHandle <> 0 then
   UnhookWindowsHookEx(HookHandle);
end;


 
Calibr ©   (2007-01-17 18:47) [2]

Спасибо!!!


 
Calibr ©   (2007-01-17 19:57) [3]


> FAskerQ ©   (17.01.07 18:46) [1]


А почему заменив WM_LBUTTONUP на WM_LBUTTONDBLCLK пример не работает?



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

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

Наверх




Память: 0.47 MB
Время: 0.03 c
15-1168920229
Стаффаж
2007-01-16 07:03
2007.02.04
Какие профессии в Германии самые выгодные


15-1168795976
Рамиль
2007-01-14 20:32
2007.02.04
Посмотрел тут "Апокалипсис"..


2-1169128955
hypnotize
2007-01-18 17:02
2007.02.04
Проблема с TLabel


1-1165667654
Kulnic
2006-12-09 15:34
2007.02.04
Player


3-1163190542
Zurius
2006-11-10 23:29
2007.02.04
Ошибка приложения, технология ADO, Access