![]() |
|
| Правила Форума редакция от 22.06.2020 |
|
|||||||
|
|
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже. |
|
![]() |
|
|
Опции темы | Опции просмотра |
Language
|
|
|
#1
|
|
Неактивный пользователь
Пол:
Регистрация: 31.01.2008
Сообщений: 37
Репутация: 4
|
Всем доброго времени суток!
Подскажите пожалуйста, как на форме с расставлеными кнопками и едитами организовать переключение по Tab. Нигде не могу найти информацию. Заранее спасибо! |
|
|
|
| Реклама: | Telegram и BotHelp | шкаф витрина массив | лужники купить билеты на концерт - redkassa.ru | полка для икон угловая купить | Заходите на сайт MebelStol.ru: кровати односпальные металлические купить - отличные цены и большой выбор! |
|
|
#2
|
|
А чуть поподробнее, какой форум? Вот на нове проверила, работает всё, кажется я где-то в браузере видела что-то про навигацию клавишами на странице...
__________________
Жыве Беларусь! |
|
|
|
|
|
|
#3
|
|
Неактивный пользователь
Пол:
Регистрация: 31.01.2008
Сообщений: 37
Репутация: 4
|
Я имею ввиду форму в дельфи (TForm).
На ней размещаю несколько кнопок и едитов. Компилирую проект, запускаю. Пытаюсь кнопкой Tab переключать фокус (курсор) по этим кнопкам и едитам. Переключение происходит в том порядке, в каком я создавал эти элементы. А мне нужно изменить этот порядок. Как это сделать? |
|
|
|
|
|
#4
|
|||||||||||||||||||||||
Вы знаете, в правильно заданном вопросе содержится половина ответа. ![]() В этом вопросе ответа примерно около 10%, поэтому попробую сыграть в угадайку ![]() 1. Изменение порядка переключения контролов: на форме щелкаем правой кнопкой и в меню выбираем пункт "Tab Order", упорядочиваем список элементов. Следует иметь в виду, что во всяких панелях и прочих GroupBox и TabSheet следует выполнять те же действия индивидуально. 2. Если требуется переход между контролами не по кнопке Tab, а, например, по Enter, нужно у формы поставить свойство KeyPreview = True, создать обработчик формы OnKeyPress, в котором написать примерно следующее: Код:
if Key = #13 then begin
if ActiveControl = Edit1 then
Memo1.Lines.Add('Ушли из Memo1');
Key:= #0;
end;
![]() Удачи. |
||||||||||||||||||||||||
|
|
|
| Сказали спасибо: |
|
|
#5
|
|
Неактивный пользователь
Регистрация: 20.02.2008
Сообщений: 3
Репутация: 0
|
Код:
if Key = #13 then begin Key := #0; SelectNext(Sender as TWinControl, True, True); end; |
|
|
|
|
|
#6
|
|||||||||||||||||||||||
Да, пардон. Самое главное (SelectNext) забыл. Но нет предела совершенству! Вот более "усовершенствованный" метод ![]() Код:
if Key = #13 then begin SelectNext(ActiveControl, True, True); Key:= #0; end; |
||||||||||||||||||||||||
|
|
|
![]() |
Похожие темы
|
||||
| Тема | Автор | Раздел | Ответов | Последнее сообщение |
| Переключение раскладки... Побыстрее бы... | AlnZ | Microsoft Windows | 24 | 07.10.2009 13:36 |
| Переключение рус/лат в лиц. WinXP SP2 | tandem | Windows XP | 9 | 12.01.2008 18:39 |
| Переключение языков | Mikka | Архив | 10 | 08.01.2007 18:43 |
|
|