Сохранение дочерних контролов пользовательского компонента в .dfm

BaDeVlad

Создаю сложный визуальный компонент. Он содержит внутри себя панели - тоже своей разработки. Пользователь должен иметь возможность создавать и выделять панели только в специальном дизайн-тайм редакторе. Кроме того, на панели нужно иметь возможность помещать все, что угодно.Как я это реализую: в Create панели устанавливаю Owner и Parent := родительский компонент. При этом в дизайн-тайме выделяется только основной компонент но на панели можно бросать контролы и настраивать их без проблем.Но возникает проблема с сохранением панелей и контролов на них.Кто знает пути решения, пожалуйста, поделитесь. Буду благодарен за любые пояснения, ссылки на толковые статьи и т. п.
9 ответов

BaDeVlad

Задачка - прямо в точности конкурсная


BaDeVlad

Да не похоже, откровенно говоря... Там - рантайм, тут - дизайн-тайм...


BaDeVlad

Почему не похоже?
...в специальном дизайн-тайм редакторе...
Этот специальный редактор и есть приложение, какая разница, откуда оно запускается?


BaDeVlad

Но возникает проблема с сохранением панелей и контролов на них.
Не в редакторе проблема... А в сохранении. В DFM, естессно...


BaDeVlad

Не в редакторе проблема... А в сохранении. В DFM, естессно...
А Вы уже умеете ???


BaDeVlad

Кто знает пути решения, пожалуйста, поделитесь. Буду благодарен за любые пояснения, ссылки на толковые статьи и т. п.
Покопайтесь в методах TComponent.GetChildren, TComponent.GetChildParent и соседних с ними. Just for example, подобную задачу решает TDBCtrlGrid.


BaDeVlad

А Вы уже умеете ???
Как раз этим и занимаюсь :) а BaDeVlad сидит за соседним компом :)


BaDeVlad

Не в редакторе проблема... А в сохранении. В DFM, естессно...
А какая проблема в записи в текстовый файл. Структура понятная.


BaDeVlad

Ну, задача так стоит...