![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перехват нажатия клафиш [D7, XP]
Sapos © (2007-05-04 16:15:00)Напомните, пожалуйста, как мне перехватить нажатие клафиши Enter и какие методы для этого используются?
DVM (2007-05-05 16:11:00) [1]
> По крайней мере код
> if Key = VK_Return then Button1.Click;
> читается значительно лучше чем
> if Key=#13 then Button.Click;
Спорный вопрос.
{RASkov} (2007-05-05 16:03:00) [2]> [18] Leonid Troyanovsky © (05.05.07 10:07)
Не прокатит если на этой же форме есть Edit2 и Button2
И соответственно им нужно такое же действо.
:)
Leonid Troyanovsky (2007-05-05 10:07:00) [3]
> Sapos © (04.05.07 16:28) [2]
> В общем мне нужно, чтобы после ввода текста в Edit после
> нажатия Enter выполнялось нажатие кнопки Button1
Button1.Default := True;
--
Regards, LVT.
{RASkov} (2007-05-04 16:59:00) [4]> Исходя из ваших соображений следует писать так ?
>
>
> case Key of
> 13: Button1.Click;
> 27: -----
> 125: ---
> 231: ----
> 8: ----
> end;
Нет. У меня был пример с одной "константой", поэтому так жестко, а вообще, конечно, лучше пользовать именованные константы.
Kostafey (2007-05-04 16:58:00) [5]> [12] DimaBr © (04.05.07 16:51)
Да некрасиво выглядит, не поспоришь.
Игорь Шевченко (2007-05-04 16:57:00) [6]
> Саша, завтра 13 будет не туда куда сегодня
Не будет
{RASkov} (2007-05-04 16:56:00) [7]> [13] DimaBr © (04.05.07 16:53)
;) Ну это в другом обработчике.... не в "моем"...
DimaBr (2007-05-04 16:53:00) [8]
> {RASkov} © (04.05.07 16:47) [11]
Не, не так.
if ord(Key) = VK_Return then Button.Click;
DimaBr (2007-05-04 16:51:00) [9]
> У кого ж рука поднимется его менять?
Всё рано или поздно меняется, все проходит пройдёт и это....
По крайней мере код
if Key = VK_Return then Button1.Click;
читается значительно лучше чем
if Key=#13 then Button.Click;
Исходя из ваших соображений следует писать так ?
case Key of
13: Button1.Click;
27: -----
125: ---
231: ----
8: ----
end;
{RASkov} (2007-05-04 16:47:00) [10]> [5] DimaBr © (04.05.07 16:33)
Тады:
procedure EditKeyPress();
begin
if Key=CHR(VK_Return) then Button.Click;
end;
;) шучу.
Kostafey (2007-05-04 16:41:00) [11]> И что ?
Так ведь стандарт есть.
У кого ж рука поднимется его менять?
{RASkov} (2007-05-04 16:39:00) [12]> [5] DimaBr © (04.05.07 16:33)
> завтра 13 будет не туда куда сегодня
С чего бы это? ;) Клаву менять?
DimaBr (2007-05-04 16:38:00) [13]
> Так оно ведь не первый год 13.
И что ?
Kostafey (2007-05-04 16:36:00) [14]> завтра 13 будет не туда куда сегодня
Так оно ведь не первый год 13.
Sapos (2007-05-04 16:35:00) [15]Спасибо!
DimaBr (2007-05-04 16:33:00) [16]Саша, завтра 13 будет не туда куда сегодня
DimaBr (2007-05-04 16:32:00) [17]
procedure TForm1.Edit1KeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if Key = VK_Return then Button1.Click;
end;
{RASkov} (2007-05-04 16:31:00) [18]> [2] Sapos © (04.05.07 16:28)
procedure EditKeyPress();
begin
if Key=#13 then Button.Click;
end;
Sapos (2007-05-04 16:28:00) [19]В общем мне нужно, чтобы после ввода текста в Edit после нажатия Enter выполнялось нажатие кнопки Button1
DVM (2007-05-04 16:20:00) [20]где перехватить?