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

Советы » Клавиши » Как подменить нажатия 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

Другое по теме:

Категории

Статьи

Советы

Copyright © 2022 - All Rights Reserved - www.delphirus.com