![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 06.04.2012
Сообщений: 78
|
![]()
Здравствуйте!
Есть довольно простая задача, которая что-то никак не решается нормальными способами. Есть 3 поля - Field1,Field2,Field3. Работают так - в поле Field1 пользователь вводит какие-то данные, на событие Field1.OnExit стоит проверка - если данные соответствуют некоему значению, то Field3.SetFocus, если не соответствуют то Field2.SetFocus. Вроде всё просто и работает нормально. Но, по-умолчанию (до ввода данных в поле Field1) нужно, чтобы Field2 было Disabled! И тут возникает проблема тк по событию Field1.OnExit курсор перепрыгивает к Field3 до проверки события OnExit и кода Field2.Enabled:=True и Field2.SetFocus, то есть курсор в любом случае переходит к Field3! Ставить код на событие OnChange нельзя. Кто знает как это порешать? |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 06.04.2012
Сообщений: 78
|
![]()
Field1.OnExit происходит по нажатию Tab. Нужно, чтобы после нажатия Tab в Field1 в событии OnExit при выполнении некоего условия открывалось поле Field2.Enabled:=True и в него ставился фокус.
Как это сделать??? |
![]() |
![]() |
![]() |
#3 | |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
![]() Цитата:
Код:
еще можно попробовать так: Код:
даешь высокое напряжение
|
|
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 06.04.2012
Сообщений: 78
|
![]()
По логике события должны бы были происходить так:
Field.Exit - Field.OnExit - FocusNextControl а происходят так: Field.Exit - FocusNextControl - Field.OnExit что вообще-то похоже на баг. Решено через OnKeyPress key=tab. |
![]() |
![]() |
![]() |
#5 | |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]() Цитата:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 06.04.2012
Сообщений: 78
|
![]()
А как ещё ?
|
![]() |
![]() |
![]() |
#7 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
![]()
Имел ввиду мышинные выходы. А чем не устраивает
Код:
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
|
![]() |
![]() |
![]() |
#8 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,837
|
![]()
У меня так:
Код:
E-Mail: arigato.freelance@gmail.com
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как сделать переключение языка ввода при попадании в определенное поле | smoky | Microsoft Office Access | 6 | 15.09.2017 07:59 |
как сделать вычисляемое поле? | posdnyaa | Microsoft Office Word | 3 | 09.11.2014 15:31 |
Как в делфи сделать переход по ссылке | artbotva | Общие вопросы Delphi | 11 | 06.05.2012 21:13 |
переход в другое поле после ввода буквы | ГОСЕАН | Помощь студентам | 6 | 10.01.2012 09:36 |
Как сделать приложение которое снимает инфу с COM-порта. | Uwe | Общие вопросы Delphi | 3 | 05.11.2008 03:44 |