![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Работа клавиши Enter как TabDelphi , ОС и Железо , КлавишиРабота клавиши Enter как Tab
Оформил: DeeCo { This code gives the key the same habbit as the key to change focus between Controls. Mit diesem Code kann man sich mit der Enter Taste zwischen mehreren Textfeldern bewegen.(anstatt nur mit der Tabulatortaste) } // Form1.KeyPreview := True ! procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then begin Key := #0; { check if SHIFT - Key is pressed } if GetKeyState(VK_Shift) and $8000 <> 0 then PostMessage(Handle, WM_NEXTDLGCTL, 1, 0) else PostMessage(Handle, WM_NEXTDLGCTL, 0, 0); end; end; Привет! Вот перевод текста на русский язык: Код на Delphi - это фрагмент кода, который делает Enter-нажатие работать как Tab-нажатие при навигации между контролами на форме. Идея заключается в использовании события Давайте разберемся, что это код делает:
В целом, этот код делает Enter-нажатие работать как Tab-нажатие при навигации между контролами на форме. Если Shift-клавиша нажата при нажатии Enter, то фокус перемещается вперед (как комбинация "Shift+Tab"), а если нет, то фокус перемещается назад (как простой "Tab"). Альтернативное решение было бы использовать метод
Эта APPROACH более прямая и может быть проще поддерживать в долгосрочной перспективе. Однако, этот код-snippet предоставляет умное решение с использованием сообщений Windows и проверкой состояния клавиш! Код на языке Delphi позволяет заменить функцию клавиши Enter на изменение фокуса между элементами интерфейса, как и при использовании клавиши Tab. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |