Тема: Enter как Tab
Показать сообщение отдельно
  #5  
Старый 14.11.2012, 16:13
Аватар для poli-smen
poli-smen poli-smen вне форума
Профессионал
 
Регистрация: 06.08.2012
Адрес: Кривой Рог
Сообщения: 1,791
Версия Delphi: Delphi 7, XE2
Репутация: 4415
По умолчанию

Цитата:
Сообщение от Black Raider
Сюда:
Код:
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);

begin

  if key=VK_RETURN then SelectNext(ActiveControl as TWinControl,true,true);

end;
Только у формы нужно свойство KeyPreview установить в True, иначе ничего не получится.
Кстати если фокус будет на кнопке (TButton например), то по нажатию Enter фокус перейдёт к следующему элементу, но также сработает и нажатие этой кнопки.

Ещё можно на форму бросить компонент TApplicationEvents и у него на событие OnMessage добавить такой обработчик:
Код:
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
begin
  if (Msg.message = WM_KEYDOWN) and (Msg.wParam = VK_RETURN) then
  begin
    Handled := True;
    SelectNext(ActiveControl as TWinControl, True, True);
  end;
end;
Ответить с цитированием