"AND" "OR"
Главная Информер Журнал Форум




Как подменить нажатия ENTER на нажатия TAB

Существует множество методов решения этой проблемы, но самый быстрый способ, это перехват нажатия клавиш, перед тем как их получит форма:

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

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

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

   Procedure TForm1.CMDialogKey(Var Msg: TWMKey);
   Begin
      If NOT (ActiveControl Is TButton) Then
         If Msg.Charcode = 13 Then
            Msg.Charcode := 9;
      inherited;
   End;

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

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