:: Архив конференции по VFP до 2005 года
modeless форма не отдает управление
Yason

Сообщений: 214
Откуда: Питер
Дата регистрации: 03.07.2002
Привет всем!

перешел с VFP6 на 8 практически безболезненно.;)

и вот седня в одном старом проекте заметил, что формочка( справочник с одним гридом ) которая болталась на топ-левел форме и никому не мешала работать с той, стала вести себя как modal, т.е. пока не закроешь нельзя работать с вызывающей.
а после закрытия к ней нельзя обратиться, как к объекту.

сделано было так:

public wr

...

If Type('wr') == 'O'

wr.resel()

Else

Do Form viewrezult.scx Name wr Linked

Endif

viewrezult.scx - modeless, in-top level, always on top

т.е. если форма висела - в главной форме к ней обращались и делали перевыборку, если была закрыта - она запускалась.

теперь она запускается и висит как модал. а после закрытия повторно не дает обратиться , говортит, что wr не объект, причем уже после того как Type('wr') == 'O' определила...

Помогите, коллеги разобраться, что с ней стало в 8-ке?

Заранее благодарю!
Ratings: 0 negative/0 positive
Re: modeless форма не отдает управление
Penner

Сообщений: 4102
Откуда: Muenster
Дата регистрации: 26.04.2002
Type('wr') == 'O' and !IsNull('wr')
Ratings: 0 negative/0 positive
Re: modeless форма не отдает управление
Combat

Сообщений: 816
Откуда: Клайпеда
Дата регистрации: 26.10.2000
Penner
Type('wr') == 'O' and !IsNull('wr')
Достаточно
VARTYPE(wr) = 'O'




------------------
Ratings: 0 negative/0 positive
Re: modeless форма не отдает управление
Yason

Сообщений: 214
Откуда: Питер
Дата регистрации: 03.07.2002
Спасибо, с этим понятно.

А что с ней может быть по поводу модальности?
почему же она останавливает выполнение?

В восьмом не надо никаких доп.настроек делать для модальности форм ? вроде этой:
SET ENGINEBEHAVIOR 70 ;) для group by ;) ?



Отредактировано (25.02.05 16:07)


------------------
Ratings: 0 negative/0 positive
Re: modeless форма не отдает управление
Penner

Сообщений: 4102
Откуда: Muenster
Дата регистрации: 26.04.2002
2Combat

Не достаточно, переменная имеет тип О, но может иметь внутри .NULL.
Ratings: 0 negative/0 positive
Re: modeless форма не отдает управление
Combat

Сообщений: 816
Откуда: Клайпеда
Дата регистрации: 26.10.2000
Penner
Не достаточно, переменная имеет тип О, но может иметь внутри .NULL.
Достаточно.
Цитата:
VARTYPE(eExpression [, lNullDataType])
If lNullDataType is false (.F.) or omitted, VARTYPE( ) returns 'X', indicating that eExpression contains the null value.




------------------
Ratings: 0 negative/0 positive
Re: modeless форма не отдает управление
Yason

Сообщений: 214
Откуда: Питер
Дата регистрации: 03.07.2002
;)
сэнкс ;)

это все чертовски познавательно, но может кто-нить обратит внимание на изначальный вопрос?
что неправильно в обращении к форме? и почему modeless форма останавливает выполнеие в 8-ке, если в 6-м проект уже давно работал?
Ratings: 0 negative/0 positive
Re: modeless форма не отдает управление
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Hi, Yason!

Перекомпилируй форму, может чего поломалось...




------------------
WBR, Igor
Ratings: 0 negative/0 positive
Re: modeless форма не отдает управление
Yason

Сообщений: 214
Откуда: Питер
Дата регистрации: 03.07.2002
Привет!
пробовал конечно . Весь проект перекомпилировал...
и совсем новую форму modeless только с одним гридом делал - тоже самое.
Не втыкаю ...

Ладно если б своими корявыми рученками снова что-то написал - так нет, ничего не трогал.
уже закипел под вечер
;)
жаль шестерки уже нет нигде, пересобрать бы его обратно там, да посмотреть...
ради это его ставить...

наверняка какая-то мелкая лажа, вот неожиданность, черт ее дери...



Отредактировано (25.02.05 19:13)


------------------
Ratings: 0 negative/0 positive
Re: modeless форма не отдает управление
Владимир Максимов
Автор

Сообщений: 14095
Откуда: Москва
Дата регистрации: 02.09.2000
А что ты вкладываешь в понятие "стала вести себя как modal, т.е. пока не закроешь нельзя работать с вызывающей."?

Ты ведь установил у нее "always on top". Т.е. она всегда "поверх" всех других форм. Хотя переходу в другие формы это мешать не должно, но визуально может казаться, что перейти не удалось. Форма-то по прежнему "сверху".

Ну, еще проверь на предмет установки Enabled=.F. для всех прочих форм в момент вызова данной.

Да, на всякий случай: если modaless форма вызывается из формы modal, то она сама становиться modal. Автоматически. От настроек это уже не зависит.




------------------
Ratings: 0 negative/0 positive


Извините, но у вас нет прав для того, чтобы оставлять сообщения в этом форуме.

On-line: 3 (Гостей: 3)

© 2000-2024 Fox Club 
Яндекс.Метрика