Тема: Клавиши
Показать сообщение отдельно
  #2  
Старый 18.05.2008, 22:11
san-46 san-46 вне форума
Активный
 
Регистрация: 25.04.2008
Сообщения: 383
Репутация: 33
По умолчанию

Возможно, но сложно. Надо понимать, что иллюзия нажатия одновременно двух клавиш и есть иллюзия. На самом деле приходят два последовательных события, сначала от одной, затем от другой клавиши.
Поэтому надо извращаться. Отловить нажатие одной клавиши в событии OnKeyDown и запомнить это обстоятельство в каком-нибудь булевском флаге. В событии OnKeyUp отслеживать, а не отпущена ли эта клавиша (если отпущена - флаг сбрасывать). Затем отлавливать нажатие другой клавиши в OnKeyDown и смотреть флаг нажатия первой клавиши.
Если флаг первой клавиши не сброшен, то первая клавиша нажата и, таким образом нажаты обе клавиши. По этому условию что-то делать.
Если это происходит на форме, то свойство KeyPreview должно быть установлено в True;
Ответить с цитированием