Вниз
Скачать: CL | DM;

OnKeyDown   Найти похожие ветки 

← →
Radgar ©   (2007-02-27 11:24) [0]

Здравствуйте.

Подскажите, пожалуйста, как с помощью OnKeyDown отловить нажатие одновременно двух клавиш и узнать какие именно клавишы были нажаты. Если нельзя OnKeyDown"ом, то есть ли другое решение проблемы?


← →
Elen ©   (2007-02-27 11:34) [1]


> одновременно двух клавиш

насколько одновременно?


← →
Radgar ©   (2007-02-27 11:35) [2]


> насколько одновременно?


Например, держать (вместе) стрелки влево и вперед.


← →
RebroFF   (2007-02-27 13:43) [3]


> нажатие одновременно двух клавиш


Точнее нажать и удерживать.


← →
Radgar ©   (2007-02-27 14:13) [4]


> Точнее нажать и удерживать.


Ну да. А есть ли способ отлавливать такие нажатия?


← →
TRUNK ©   (2007-02-27 14:49) [5]

> Подскажите, пожалуйста, как с помощью OnKeyDown отловить нажатие
> одновременно двух клавиш и узнать какие именно клавишы были нажаты

Например, вот так:

var
KeyPressed: array[VK_LBUTTON..VK_OEM_CLEAR] of Boolean;

procedure TForm1.Form1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
KeyPressed[Key] := true;
if KeyPressed[VK_LEFT] and KeyPressed[VK_UP] then
 begin
 {.....}
 end;
end;

procedure TForm1.Form1KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
KeyPressed[Key] := false;
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.038 c
2-1172563802
Cara
2007-02-27 11:10
2007.03.18
Индекс в DBGrid.


3-1166610028
Megabyte
2006-12-20 13:20
2007.03.18
TpFIBDataSet: RecordCount, глюк?


4-1162556099
Newuser0
2006-11-03 15:14
2007.03.18
Always On Bottom


15-1172114951
Slider007
2007-02-22 06:29
2007.03.18
С днем рождения ! 22 февраля


2-1171884428
form1
2007-02-19 14:27
2007.03.18
INI + Form




   Наверх