Карта сайтаСсылкиКонтакты

Как сделать, чтобы Enter работала как Tab

PDF Печать
Статьи

Иногда пользователи хотят, чтобы в приложении можно было переходить по полям ввода при нажатии на клавишу Enter, так как намного удобнее, чем Tab. Есть много способов этого добиться, но этот способ намного практичнее, достаточно добавить одну процедуру. В нашем случае эта процедура - EnterAsTab.

Клавиша Enter работает как Tab

Вот как это можно реализовать:


private
    { Private declarations }
    procedure EnterAsTab(var Msg: TMsg; var handled: boolean);

{ ... }

procedure TForm1.EnterAsTab(var Msg: TMsg; var handled: boolean);
begin
  if Msg.Message = WM_KEYDOWN then
  begin
    if Msg.WParam = VK_RETURN then
      keybd_event(VK_TAB, 0, 0, 0);
  end;
end;

А в событии OnCreate формы запишем:


procedure TForm1.FormCreate(Sender: TObject);
begin
  Application.OnMessage:= EnterAsTab;
end;

Вот и все! Очень просто!

Теперь при нажатии на клавишу Enter, фокус будет передан следующему управлению, которое идет следующим по свойству TabOrder.


 

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


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