Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / FoxPro, Visual FoxPro Новый топик    Ответить
 Народ ,не пойму проблему..  [new]
Valerii
Member

Откуда:
Сообщений: 712
Все привет,
На днях сделал одно изменение в программе
Вызывая модальную форму из формы с гридом через dblClick метода обьекта text1 грида

DO FORM form\severalinventvalue.scx TO this.Value
This.Valid()

эта форма становится недоступной ине активной и я на ней ничего не могу сделать.

При первой компиляции проги модальная форма отображалась корректно и я мог на ней вносить некоторые даные для возврата значение в поле грида и она возвращала по кнопке ок в методе unload

RETURN thisform.returnValue нужное мне значение в поле text1 грида
После чего корректно отрабатывался VALID...

Потом внес некоторые незначительные изменения в бизнес логике и что-то намутил со свойствами (не пойму что, вроде ничего не менял) теперь это модальное окно выскакивая не является активной, то есть я на ней ничего не могу поклацать, внести, изменить ...
родительская форма остается доступной и я на ней могу делать все что делал до этого но закрыть я ее немогу.
но основаня кнопка проги на панели инструментов доступна с quit и я могу нормально завершить работу программы.
Все перепробовал ничего не понимаю. До сих пор считал что я huge в этом продукте. ;-)

Свойтсва модальной формы:
AlwaysOnTop = .T.
AutoCenter = .T.
BorderStyle = Fixed Single
BuferMode = 2
DataSession = 2
WindowType = Modal

Всем спасибо за идеи..... я просто в легком шоке...
15 сен 18, 14:13    [21675509]     Ответить | Цитировать Сообщить модератору
 Re: Народ ,не пойму проблему..  [new]
Dima T
Member

Откуда:
Сообщений: 13706
Запускай отладчик и смотри по шагам что происходит. EventTracking можешь включить.

Как-то было подобное из-за того что первая форма хранила ссылку на контрол второй. И при закрытии первой все повисало.

Еще как вариант: вызываемая форма передает фокус родительской, т.е. вызов SetFocus()
16 сен 18, 13:22    [21675914]     Ответить | Цитировать Сообщить модератору
 Re: Народ ,не пойму проблему..  [new]
Valerii
Member

Откуда:
Сообщений: 712
Dima T
Запускай отладчик и смотри по шагам что происходит. EventTracking можешь включить.

Как-то было подобное из-за того что первая форма хранила ссылку на контрол второй. И при закрытии первой все повисало.

Еще как вариант: вызываемая форма передает фокус родительской, т.е. вызов SetFocus()


Дима, ты прав. Я нашел причину и она была в setfocus().... в одном из евентов которое уводила фокус на на родительскую форму.
Был один LostFocus() который по определенному свойству отрабатывался или нет... это свойство "включалось" и фокус с модальной формы съезжал в родительскую...
Хотя считаю это багом фокса. не должна форма так терять свое управление.
17 сен 18, 10:15    [21676415]     Ответить | Цитировать Сообщить модератору
Все форумы / FoxPro, Visual FoxPro Ответить