Показать сообщение отдельно
  #1  
Старый 05.07.2014, 12:59
Alexandr_17_10 Alexandr_17_10 вне форума
Прохожий
 
Регистрация: 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;
но не работает
Цель: отловить нажатия клавиши не в зависимости где находится курсор мыши и не используя таймера.
Ответить с цитированием