Главная страница
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.055 c
2-1169204894
Bobs
2007-01-19 14:08
2007.02.04
Проблема с программой


15-1167329662
Rouse_
2006-12-28 21:14
2007.02.04
Вот вам для разминки мозгов.


2-1169046976
Calibr
2007-01-17 18:16
2007.02.04
Клик мыши вне формы


15-1168847586
novill
2007-01-15 10:53
2007.02.04
D6 Вертикальное выделение, как отключить?


10-1128924820
R_S
2005-10-10 10:13
2007.02.04
закрыть сервер автоматизации