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

Как отловить нажатие на стрелки?   Найти похожие ветки 

← →
KIR ©   (2002-04-19 09:53) [0]

сабж


← →
Ally ©   (2002-04-19 10:09) [1]


procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
case Key of
VK_LEFT: Label1.Caption := "Left arrow is pressed";
VK_RIGHT: Label1.Caption := "Right arrow is pressed";
VK_UP: Label1.Caption := "Up arrow is pressed";
VK_DOWN: Label1.Caption := "Down arrow is pressed";
else Exit;
end;
end;


Потянет?


← →
Donal_Graeme   (2002-04-19 10:56) [2]

и Form.KeyPreview должно быть True.
и ещё, работать именно для стрелок это будет только если фокус ввода не находится на любом из контролов, так как в этом случае эти клавиши будут ими отрабатываться, и до формы дело не дойдёт.


← →
handra ©   (2002-04-19 11:01) [3]

Cоздать ActionList, а в нем четыре Action с шот-катами Left, Right, Up и Down.


← →
Donal_Graeme   (2002-04-19 11:06) [4]

и Form.KeyPreview должно быть True.
и ещё, работать именно для стрелок это будет только если фокус ввода не находится на любом из контролов, так как в этом случае эти клавиши будут ими отрабатываться, и до формы дело не дойдёт.


← →
KIR ©   (2002-04-22 13:25) [5]

Спасибо, народ! Еще вопрс (уже чисто из-за любознательности). А почему это все работает только по OnKeyDown, а по OnKeyPress нет?


← →
Song ©   (2002-04-22 13:28) [6]

На оnKeyPress нужно обрабатывать не коды клавиш,а символы, например
IF Key=#13 then ShowMessage("нажата Enter");


← →
Виктор Щербаков ©   (2002-04-22 13:30) [7]

KIR © (22.04.02 13:25)
По туму, что OnKeyPress Occurs when a user presses a single character key. А стрелки к ним не относятся.


← →
KIR ©   (2002-04-22 13:31) [8]

А зачем тогда нужно событие OnKeyPress?


← →
panov ©   (2002-04-22 13:42) [9]

>KIR © (22.04.02 13:31)
Создавай новый Topic для новых вопросов.



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

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



Память: 0.46 MB
Время: 0.008 c
1-17594
Varg
2002-04-22 16:09
2002.05.06
Как эмулировать окончание сеанса Windows?


1-17519
HDD
2002-04-23 15:50
2002.05.06
Помогите пожалуйста!


6-17666
MAN
2002-02-21 15:29
2002.05.06
Выбор из базы WINSа IP-адреса по имени пользователя


1-17568
Vint
2002-04-22 12:19
2002.05.06
как представить TDateTime числом


14-17672
MKL
2002-03-27 18:37
2002.05.06
Допустим я написал Shareware программу, как я могу ее продать?




   Наверх