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

Вниз

WM_LBUTTONDOWN   Найти похожие ветки 

 
iBitmap ©   (2004-08-21 23:54) [0]

Доброе время суток.
Я написал следующий код:
...
procedure WMLDown(var MSG: TMessage); Message WM_LBUTTONDOWN;
...
procedure TForm1.WMLDown(var Msg: TMessage);
begin
 ShowMessage("COOL");
end;
...
Но эта процедура выполняется, только когда я нажимаю на форму, а как выполнить эту процедуру, даже если я кликнул мышью за пределами формы?


 
wicked ©   (2004-08-22 00:06) [1]


> а как выполнить эту процедуру, даже если я кликнул мышью
> за пределами формы?

нормальными средствами - никак...
ставить хуки или периодически проверять состояние кнопок мыши...


 
iBitmap ©   (2004-08-22 00:49) [2]

А как поставить хук на мышку, дело в том, что я ни разу не ставил хуки. Ты не мог бы написать здесь исходник, для хука мыши?


 
iBitmap ©   (2004-08-22 03:48) [3]

А все. Спасибо. нашел я то, что мне нужно:
unit Unit1;

interface

uses
 Windows, Messages, Classes, Forms, StdCtrls, Controls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   ListBox1: TListBox;
   procedure Button1Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;
 Hook: hHook;

implementation

{$R *.dfm}

function Hooker(Code: Integer; WParam: Word; LParam: LongInt): LongInt; stdcall;
var
   Msg: PEventMsg;
begin
   Msg := Pointer(LParam);
   if Msg.Message = WM_LBUTTONDOWN then Form1.ListBox1.Items.Add("Click");
   Result := CallNextHookEx(Hook, Code, WParam, LParam);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
    Hook := SetWindowsHookEx(WH_JOURNALRECORD, @Hooker, hInstance, 0);
end;

end.


 
TUser ©   (2004-08-22 11:42) [4]

А зачем все массаги просматривать? Есть специальные мышиные хуки (WM_MOUSE)



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

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

Наверх




Память: 0.47 MB
Время: 0.027 c
11-1080427828
Deimos
2004-03-28 01:50
2004.09.05
KOL + TASM = ???


14-1092925357
oldman
2004-08-19 18:22
2004.09.05
Вот такое решение задачки...


14-1092385281
guest
2004-08-13 12:21
2004.09.05
Интересно


1-1093019041
Ragazor
2004-08-20 20:24
2004.09.05
Чтение файла, Pos(x,y,z)


3-1092217638
zse
2004-08-11 13:47
2004.09.05
в MS SQL Serv хранимая процедура