Содержание материала

В секции формы PRIVATE добавьте:

Code:

Procedure CMDialogKey(Var Msg:TWMKey); message CM_DIALOGKEY;

 

В секции IMPLEMENTATION добавьте:

 

Code:

Procedure TForm1.CMDialogKey(Var Msg: TWMKey);

Begin

If NOT (ActiveControl Is TButton) Then

If Msg.Charcode = 13 Then

Msg.Charcode := 9;

inherited;

End;

  

Тем самым мы исключаем срабатывания нашей подмены, если фокус находится на кнопке.

 Чтобы ускорить работу приложения, не надо активизировать свойство формы KEYPREVIEW

 

Code:

procedure TForm1.FormCreate(Sender: TObject);

begin

Form1.KeyPreview := true;

end;

 

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

var

c: TControl;

begin

if Key <> 13 then

   Exit;

repeat

   c := Form1.FindNextControl(Form1.ActiveControl, true, true, true);

   (c as TWinControl).SetFocus;

until

   c is TEdit;

end;

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить