:: Архив конференции по VFP до 2005 года
TopLevel Form
Андрей

Сообщений: 197
Дата регистрации: 03.09.2000
Вопрос.
Есть форма TopLevel, в ней открываются другие формы.
Как из них обратиться к элементам в верхней форме, не указывая ее
конкретное имя (типа ThisForm, Parent ...).
Открываемые формы - экземпляры класса.
Заранее спасибо за помощь, Андрей.
Ratings: 0 negative/0 positive
RE: TopLevel Form
JS

Сообщений: 12264
Откуда: Эстония
Дата регистрации: 04.09.2000
Для этой цели служит системная переменная _SCREEN

Удачи!
Ratings: 0 negative/0 positive
TopLevel Form
Андрей

Сообщений: 197
Дата регистрации: 03.09.2000
К сожалению не хочет служить.
Попробовал сменить Caption - в окне Фокса он сменился, а в TopLevel Form - нет. К тому же я хочу работать не с самой формой, а с объектами на ней (TextBox, ...). Еще у меня стоит Application.Visible=.F.
Андрей
Ratings: 0 negative/0 positive
используй переменную _VFP
AnMa
используй переменную _VFP, далеее по иерархиии объектв
Ratings: 0 negative/0 positive
RE: используй переменную _VFP
Sergey Titow
Автор

Сообщений: 2242
Дата регистрации: 12.09.2000
Есть системная переменная _screen, которая указывает на main FoxPro window. Все формы, которые создаются в ходе выполнения проги, являются дочерними по отношению к ней (даже если Application.Visible=.F., все равно _screen существует!) и ссылки на них можно получить из коллекции forms (массив ссылок на формы: _screen.forms(_screen.formcount) - ссылка на последнюю созданную форму). Т.е. на первую созданную форму (видимо) можно ссылаться _screen.forms(1).

> не указывая ее конкретное имя

А почему это надо обходить?
В коде инициализации проекта перед read events поставить:
public mainform
do form MyMainTopLevelForm name mainform
После этого всюду на главное окно можно сослаться по mainform
Ratings: 0 negative/0 positive


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

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

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