Galkov, именно об этой проблеме я в первую очередь и подумал, глядя опять таки на приведенный код. Метод Init будет объявлен в контейнере, но не будет вызываться внутри него. Тогда грубая схема вызовов будет такая:
[code:1]
Child := FOnCreate(); // это например в MultiElement1
Child.MainClass.Init; // вызов Init из MultiElement2
....
procedure MultiElement2.Init;
begin
... // вызываем Init всех компонент, кому оно надо
// а так же Init ВСЕХ контейнеров
end;
[/code:1]
в итоге Init любого контейнера даже теоритически не может быть вызван до тех пор, пока все контейнеры и элементы с большей воженностью не будут созданы. А Init основного контейнера(т.е. главной формы) нужно вызвать из Start. Вот вроде и вся задача.
Администрация
Ответов: 15295
Рейтинг: 1519
|
|||
карма: 27 |
|