::Главная страница ::Delphi/Паскаль :: Статьи

Как перехватить нажатие клавиши на клавиатуре

 Обычно это используется для клавиш вроде Print Screen. Для того чтобы перехватить нажатие какой-то клавиши на клавиатуре нужно зарегистрировать "горячую клавишу" (HotKey). В дальнейшем Windows будет посылать сообщение WM_HOTKEY при каждом нажатии на зарегистрированную клавишу.

...
private
  procedure WMHotKey(var Msg: TWMHotKey); message WM_HOTKEY;
 ...
const
  MyHotKey = ord('1');

procedure TForm1.WMHotKey(var Msg: TWMHotKey);
begin
  MessageBeep(0);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  RegisterHotKey(Form1.Handle, MyHotKey, 0, MyHotKey);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  UnRegisterHotKey(Form1.Handle, MyHotKey);
end;
Тематические ссылки
Ваша ссылка Ваша ссылка

Обмен кнопками, ведение статистики, реклама.