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

Перехват нажатия клафиш   Найти похожие ветки 

← →
Sapos ©   (2007-05-04 16:15) [0]

Напомните, пожалуйста, как мне перехватить нажатие клафиши Enter и какие методы для этого используются?


← →
DVM ©   (2007-05-04 16:20) [1]

где перехватить?


← →
Sapos ©   (2007-05-04 16:28) [2]

В общем мне нужно, чтобы после ввода текста в Edit после нажатия Enter выполнялось нажатие кнопки Button1


← →
{RASkov} ©   (2007-05-04 16:31) [3]

> [2] Sapos ©   (04.05.07 16:28)

procedure EditKeyPress();
begin
 if Key=#13 then Button.Click;
end;


← →
DimaBr ©   (2007-05-04 16:32) [4]


procedure TForm1.Edit1KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
 if Key = VK_Return then Button1.Click;
end;


← →
DimaBr ©   (2007-05-04 16:33) [5]

Саша, завтра 13 будет не туда куда сегодня


← →
Sapos ©   (2007-05-04 16:35) [6]

Спасибо!


← →
Kostafey ©   (2007-05-04 16:36) [7]

> завтра 13 будет не туда куда сегодня


Так оно ведь не первый год 13.


← →
DimaBr ©   (2007-05-04 16:38) [8]


> Так оно ведь не первый год 13.

И что ?


← →
{RASkov} ©   (2007-05-04 16:39) [9]

> [5] DimaBr ©   (04.05.07 16:33)
> завтра 13 будет не туда куда сегодня

С чего бы это? ;) Клаву менять?


← →
Kostafey ©   (2007-05-04 16:41) [10]

> И что ?

Так ведь стандарт есть.
У кого ж рука поднимется его менять?


← →
{RASkov} ©   (2007-05-04 16:47) [11]

> [5] DimaBr ©   (04.05.07 16:33)

Тады:
procedure EditKeyPress();
begin
if Key=CHR(VK_Return) then Button.Click;
end;

;) шучу.


← →
DimaBr ©   (2007-05-04 16:51) [12]


> У кого ж рука поднимется его менять?

Всё рано или поздно меняется, все проходит пройдёт и это....

По крайней мере код
if Key = VK_Return then Button1.Click;
читается значительно лучше чем
if Key=#13 then Button.Click;

Исходя из ваших соображений следует писать так ?


case Key of
 13: Button1.Click;
 27: -----
 125: ---
 231: ----
 8: ----
end;


← →
DimaBr ©   (2007-05-04 16:53) [13]


> {RASkov} ©   (04.05.07 16:47) [11]

Не, не так.
if ord(Key) = VK_Return then Button.Click;


← →
{RASkov} ©   (2007-05-04 16:56) [14]

> [13] DimaBr ©   (04.05.07 16:53)

;) Ну это в другом обработчике.... не в "моем"...


← →
Игорь Шевченко ©   (2007-05-04 16:57) [15]


> Саша, завтра 13 будет не туда куда сегодня


Не будет


← →
Kostafey ©   (2007-05-04 16:58) [16]

> [12] DimaBr ©   (04.05.07 16:51)

Да некрасиво выглядит, не поспоришь.


← →
{RASkov} ©   (2007-05-04 16:59) [17]

> Исходя из ваших соображений следует писать так ?
>
>
> case Key of
> 13: Button1.Click;
> 27: -----
> 125: ---
> 231: ----
> 8: ----
> end;

Нет. У меня был пример с одной "константой", поэтому так жестко, а вообще, конечно, лучше пользовать именованные константы.


← →
Leonid Troyanovsky ©   (2007-05-05 10:07) [18]


> Sapos ©   (04.05.07 16:28) [2]

> В общем мне нужно, чтобы после ввода текста в Edit после
> нажатия Enter выполнялось нажатие кнопки Button1

Button1.Default := True;

--
Regards, LVT.


← →
{RASkov} ©   (2007-05-05 16:03) [19]

> [18] Leonid Troyanovsky ©   (05.05.07 10:07)

Не прокатит если на этой же форме есть Edit2 и Button2
И соответственно им нужно такое же действо.
:)


← →
DVM ©   (2007-05-05 16:11) [20]


> По крайней мере код
> if Key = VK_Return then Button1.Click;
> читается значительно лучше чем
> if Key=#13 then Button.Click;

Спорный вопрос.



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

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



Память: 0.49 MB
Время: 0.028 c
6-1163694731
Tiberius
2006-11-16 19:32
2007.05.20
Текст из браузера


15-1177150053
ProgRAMmer Dimonych
2007-04-21 14:07
2007.05.20
Подскажите, пожалуйста, решение проблемы...


2-1177669997
allucard
2007-04-27 14:33
2007.05.20
Как присвоить окну формы Heigh=900 при разрешении 1024х768?


1-1174662834
Veon
2007-03-23 18:13
2007.05.20
потоки и визуальные компоненты


15-1176981166
Nija
2007-04-19 15:12
2007.05.20
СРОЧНО НУЖНА ПОМОЩЬ




   Наверх