Нажатие нескольких клавиш.

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
Seemmyy
незнакомец
Сообщения: 4
Зарегистрирован: 27.05.2012 19:48:42

Нажатие нескольких клавиш.

Сообщение Seemmyy »

При нажатии нескольких клавиш видит только одну.

Код: Выделить всё

procedure TForm1.FormKeyPress(Sender: TObject; var Key: char);
begin
  if key='w' then ...
  if key='s' then ...
  if key='o' then ...
  if key='l' then ...
end;


Тоесть, клавиши работают поочереди, а одновременно нет.
Подскажите, как исправить.
Сквозняк
энтузиаст
Сообщения: 1159
Зарегистрирован: 29.06.2006 22:08:32

Сообщение Сквозняк »

Естественно, события нажатия клавиш выстроились в очередь и в порядке очереди обрабатываются :) Самое простое записывать время событий keydown и keyup и при KeyPress проверять по записям что там ещё нажато.
Ответить