Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.11;
Скачать: CL | DM;

Вниз

Помогите с разработкой компонента!   Найти похожие ветки 

 
_ZeKa   (2005-06-22 20:13) [0]

Компонент представляет из себя следующее творение: существует класс TParentControl, он имеет коллекцию Sections. Элементы этой коллекции - SectionItem в конструкторе создают объект TChildControl, родителем для которого является TParentControl. В ChildControl я устанавливаю ControlStyle = ControlStyle +[csAcceptsControls], для того чтобы он мог принимать компоненты в design-time (как TPanel).
Конфуз в том, что когда в design-time я кидаю на ChildControl`ы компоненты все работает, но в run-time их нет, они просто не сохраняются в файле формы. Отсюда вопрос: Как сделать так чтобы они там сохранялись? По принципу действия компонент похож на TPageControl с вкладками. Это меня навело на мысль(может и ошибочную), что ChildControl`ы должны быть редактируемыми в design-time, но я не заню как это сделать.
P.s. Забыл сказать, что все классы порождены от TCustomControl и никаких наваротов не имеют.
Благодарен за любые предложения.


 
Юрий Зотов ©   (2005-06-22 20:35) [1]

> родителем для которого является TParentControl

А кто для него является владельцем? Должна быть форма. Иначе ChildControl и все, что на нем лежит, попасть в DFM не сможет.

Это первое. Второе - очень похоже, что в Ваших классах потребуется поиграться с замещением методов GetParentComponent, GetChildren, SetChildOrder и им подобных. Посмотрите для примера, как это сделано в PageControl и TabSheet (чтобы сразу понять, о чем идет речь, положите на форму PageControl, создайте на нем TabSheet, положите на него что-нибудь и затем просмотрите форму в виде текста - увидите, как хитро сохранился TabSheet и все, что на нем. Вам нужно получить то же самое).



Страницы: 1 вся ветка

Текущий архив: 2005.07.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.03 c
3-1117179624
Neat
2005-05-27 11:40
2005.07.11
DBGrid. Сохранение порядка отображения записей


4-1116431908
George
2005-05-18 19:58
2005.07.11
SolidWorks


6-1112683463
doktor
2005-04-05 10:44
2005.07.11
как узнать все IP в локальной сети


11-1101727765
Userxxx
2004-11-29 14:29
2005.07.11
Как отправить почту на KOL


8-1110699990
Tirex
2005-03-13 10:46
2005.07.11
Сглаживание изображения (tbitmap)