Главная страница
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.049 c
2-1168774269
click
2007-01-14 14:31
2007.02.04
Excel: сохраняет "ненужные" копии файлов


15-1168833694
Slider007
2007-01-15 07:01
2007.02.04
С днем рождения ! 14 января


15-1168865021
Курдль
2007-01-15 15:43
2007.02.04
Что такое iPod?


2-1169307469
MaxInside
2007-01-20 18:37
2007.02.04
Мин. и макс. значения


9-1143029770
!Trinix
2006-03-22 15:16
2007.02.04
Ошибка макса