Главная страница
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.054 c
15-1169036653
IMHO
2007-01-17 15:24
2007.02.04
Долевое строительство


15-1168804327
altex
2007-01-14 22:52
2007.02.04
Ноут в инет через ПК или Wi-Fi


3-1163498274
Чапаев
2006-11-14 12:57
2007.02.04
Что бы такое raise нуть?..


1-1165749025
~Димас~
2006-12-10 14:10
2007.02.04
Сохранение


2-1169040951
InfraRed
2007-01-17 16:35
2007.02.04
Функция RegConnectRegistry