Delphi World - Перехват курсорных клавиш 2
Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Перехват курсорных клавиш 2

Автор: Robert Wittig

Вы можете перехватывать нажатие курсорных клавиш на уровне приложения:

Создайте HandleMessages как метод формы и затем назначьте его Application.HandleMessages.


procedure tForm1.HandleMessages(var Msg: tMsg; var Handled: Boolean);
begin
  if (Msg.Message = WM_KeyDown) and
    (Msg.wParam in [VK_UP, VK_DOWN, VK_LEFT, VK_RIGHT]) then
  begin
    case Msg.wParam of
      VK_UP: ShowMessage('Нажата стрелка вверх');
      VK_DOWN: ShowMessage('Нажата стрелка вниз');
      VK_LEFT: ShowMessage('Нажата стрелка влево');
      VK_RIGHT: ShowMessage('Нажата стрелка вправо');
    end;
    Handled := True;
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnMessage := HandleMessages;
end;

Проект Delphi World © Выпуск 2002 - 2017
Автор проекта: Эксклюзивные курсы программирования