Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.037 c
9-1104993420
[Baradoo]
2005-01-06 09:37
2005.07.11
3D космический шутер (demo) 600KB


1-1119431432
Darkwing
2005-06-22 13:10
2005.07.11
Создание файла больше 4 ГБ.


8-1111160885
zhongguoren
2005-03-18 18:48
2005.07.11
tstringlist.create


3-1117022712
ANB
2005-05-25 16:05
2005.07.11
Как лучше построить безопасность БД ? (Oracle)


3-1117090760
Tomkat
2005-05-26 10:59
2005.07.11
Скрипт на базе штатными средствами




   Наверх