powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Метод setfocus
5 сообщений из 5, страница 1 из 1
Метод setfocus
    #32673590
karpi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
В методе LostFocus объекта Text1 после нажатия Enter выполняется форма
DO FORM form1 и после выхода из form1 мне необходимо установить курсор снова в объект Text1, т.е. делаю так
в методе LostFocus

DO FORM form1
ThisForm.Text1.Setfocus

Но он мне устанавливает курсор на следующий объект Text2 по обходу Set Tab Order.
Помогите с это проблемой.
...
Рейтинг: 0 / 0
Метод setfocus
    #32673670
sz1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
sz1
Гость
karpiDO FORM form1
ThisForm.Text1.Setfocus

Но он мне устанавливает курсор на следующий объект Text2 по обходу Set Tab Order.
Помогите с это проблемой.
После возврата из FORM1 у Вас происходит событие Activate
в вызывающей форме, поэтому фокус и не встает, куда нужно
...
Рейтинг: 0 / 0
Метод setfocus
    #32674508
sar99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ДОБРЫЙ ДЕНЬ!
ЕСЛИ ВЫ ВСЕ ЖЕ УСТАНОВИТЕ ФОКУС НА TEXT1
ТО ПРИ ВЫХОДЕ (LOSTFOCUS) У ВАС ОПЯТЬ ФОРМА ВЫСКОЧИТ
И ТАК ДО БЕСКОНЕЧНОСТИ! ЧТО-ТО У ВАС В ИНТЕРФЕЙСЕ НЕ ПРОДУМАНО!
...
Рейтинг: 0 / 0
Метод setfocus
    #32674518
sar99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А ЕСЛИ РАССМОТРЕТЬ ПРОБЛЕММУ ВОЗВРАТА ФОКУСА(НО НЕ
БЕЗУСЛОВНУЮ ЧТО ЛИШЕНО СМЫСЛА А ПО УСЛОВИЮ)
ТО В GOTFOCUS СЛЕДУЮЩЕГО ОБЬЕКТА ПИШЕМ:
IF <УСЛОВИЕ>
THISFORM.TEXT1.SETFOCUS()
ENDIF
...
Рейтинг: 0 / 0
Метод setfocus
    #32674635
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Метод SetFocus() игнорируется в методах потери фокуса. Т.е. давать эту команду в методе LostFocus() бессмысленно! Она будет проигнорирована.

Кроме того, если твоя форма НЕ модальная, то на команде DO FORM не произойдет остановки выполнения метода и метод LostFocus благополучно завершится, хотя форма все еще будет висеть на экране. В этом случае надо давать команду перевода фокуса не из родительской формы, а непосредственно из вызванной формы. Как-то так:

FormParent.TextBox2.SetFocus()

Если дочерняя форма модальная, то можно перевести ее вызов в метод Valid(), дело в том, что если в методе Valid() дать команду

RETURN 0

то выхода из объекта не произойдет. Хотя я бы так не делал. Есть риск "подвесить" всю форму - невозможно будет ее закрыть, поскольку нельзя будет выйти из объекта.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Метод setfocus
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]