Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  4 684

•  TDictionary Custom Sort  6 692

•  Fast Watermark Sources  6 470

•  3D Designer  9 408

•  Sik Screen Capture  6 811

•  Patch Maker  7 227

•  Айболит (remote control)  7 205

•  ListBox Drag & Drop  6 052

•  Доска для игры Реверси  97 692

•  Графические эффекты  7 379

•  Рисование по маске  6 682

•  Перетаскивание изображений  5 531

•  Canvas Drawing  5 923

•  Рисование Луны  5 674

•  Поворот изображения  5 148

•  Рисование стержней  3 744

•  Paint on Shape  2 937

•  Генератор кроссвордов  3 861

•  Головоломка Paletto  3 081

•  Теорема Монжа об окружностях  3 893

•  Пазл Numbrix  2 561

•  Заборы и коммивояжеры  3 316

•  Игра HIP  2 281

•  Игра Go (Го)  2 189

•  Симулятор лифта  2 591

•  Программа укладки плитки  2 195

•  Генератор лабиринта  2 701

•  Проверка числового ввода  2 350

•  HEX View  2 681

•  Физический маятник  2 346

 
скрыть

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




Программист в церкви молится:
- Во имя отца и сына и святого духа. Enter.

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

В секции формы 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 © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте