05.07.2014, 12:59
|
Прохожий
|
|
Регистрация: 17.06.2014
Сообщения: 27
Версия Delphi: Delphi 7, XE6
Репутация: 10
|
|
Отловить нажатия клавиш мыши, клавиатуры через winapi
Пробывал сделать так
Код:
public
{ Public declarations }
id1, id2:Integer;
procedure WMHotKey(var Msg: TWMHotKey); message WM_HOTKEY;
end;
procedure TForm1.WMHotKey(var Msg: TWMHotKey);
var DC: HDC;
cur:TPoint;
begin
if (Msg.HotKey = id1)or(Msg.HotKey = id2) then begin
DC := CreateDC('MONITOR', nil, nil, nil);
Windows.GetCursorPos(Cur);
label8.Color:=GetPixel(DC, Cur.X, Cur.Y);
DeleteDC(DC);
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
id1 := GlobalAddAtom('Hotkey1');
RegisterHotKey(Handle, id1, 0, VK_MBUTTON);
id2 := GlobalAddAtom('Hotkey2');
RegisterHotKey(Handle, id2, $12 + $10, $5A);
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
UnRegisterHotKey(Handle, id1);
GlobalDeleteAtom(id1);
UnRegisterHotKey(Handle, id2);
GlobalDeleteAtom(id2);
end;
но не работает
Цель: отловить нажатия клавиши не в зависимости где находится курсор мыши и не используя таймера.
|