ник: Loser
Bellerofont:
такой синтаксис я пока не использую, но вообще-то собирался.
потому что каждый раз прописывать полный путь не очень то хочется, я люблю работать с "константными" вызовами. Хочется где-то (кстати, а где это сделать правильно?) типа в модуле формы Main описать как паблик все потребные чайлды:
Set Child1 = Forms!Main!Child1.Form
Set Child2 = Forms!Main!Child2.Form,
к которым будут адресоваться подобные вызовы, чтобы писать эти вызовы проще:
Child1.SelfRefresh
Child2.SelfRefresh
и т.д.
Причем сделать эти сэты в процедуре FormOpen (или лучше FormLoad?) главной формы,
что гарантирует меня от тех ошибок, о которых предупреждает Osmor.
И все. Поскольку вызывают друг друга чайлды все той же главной формы Main, то я ожидаю, что никаких ошибок возникнуть не может, потому что если закрыта главная форма - то и подавно закрыты все ее чайлды.
Osmor:
а если у меня эта самая MyForm описана как
Set MyForm = Forms!Main!Child1.Form
то разве вызов
MyForm.SelfRefresh не будет давать такую же ошибку как и вызов
Forms!Main!Child1.Form.SelfRefresh ??
Ведь этого адреса то нету при закрытой Main?
Или когда я прописываю этот сэт, то прописывается в него только адрес самой формы, а является ли она чьим-то чайлдом или нет - уже никого не волнует, она будет работать как независимая форма, сама по себе?
И если адрес чайлда в Main'е совпадет с адресом, прописанным в сэте - то это так "получится", что обновление, запущенное MyForm.SelfRefresh "окажется" одновременно обновлением "того самого чайлда"?
Т.е. MyForm.SelfRefresh вызывает обновление именно в MyForm, а не в чайлде, а в чайлде он виден потому что Child1 - это та же самая ссылка, что и MyForm, я все правильно понял?
Т.е. на самом деле до тех пор, пока я уверен, что адреса чайлдов не менялись, а совпадают с теми, которые выставлены в сэтах - мне нет разницы, каким из двух способов вызывать эти рефреши?