Форум: "Потрепаться";
Текущий архив: 2003.06.05;
Скачать: [xml.tar.bz2];
ВнизНовые свойства... Найти похожие ветки
← →
Aga (2003-05-15 17:58) [0]Имеется иерархия форм, помещенная в репозиторий. У некоторых из этих форм имеются
добавленные свойства в published секции. Как сделать эти проперти видимыми инспектору для визуальной установки ?
Эти свойства вообще не видны, хотя, естественно, доступны и работают
← →
MBo (2003-05-15 18:00) [1]ccpack Сергея Орлика
← →
Mike_Goblin (2003-05-15 18:49) [2]или разобраться с RegisterCustomModule
← →
Юрий Зотов (2003-05-15 20:16) [3]Увы, должен заметить, что не все так просто. Если речь идет о наследовании форм через репозиторий, то, вероятно, имеется в виду не только наследование их классов, но еще и ВИЗУАЛЬНОЕ наследование (то есть, наследование всех компонентов, лежащих на формах-предках). Иными словами, не только о наследовании самих классов, но еще и о наследовании их РЕСУРСОВ.
Так вот - стоит для формы из репозитория вызвать RegisterCustomModule со стандартным TCustomModule (а CCPack именно это и делает), как ВИЗУАЛЬНОЕ наследование "слетает" и форма-потомок получается девственно чистой. Класс, естественно, наследуется прекрасно, а вот ресурсы - нет.
Несколько месяцев назад я это направление копал, причем довольно капитально. Написал свой эксперт (в целом, аналог CCPack, но еще и заливающий на форму-потомок ресурсы ее предков, а также добавляющий модули этих предков к проекту - как при стандартном наследовании через репозиторий).
Все работало прекрасно... за исключением одной "мелочи". Залитые на форму-потомок компоненты IDE воспринимала, как ее СОБСТВЕННЫЕ, а не как унаследованные. То есть, получалось не наследование, а как бы копирование. И ничего поделать с этим мне так и не удалось. Увы.
← →
aga (2003-05-17 17:45) [4]2Юрий Зотов
Пробовал я TCustomModule но в Д6 и Д7 у меня вилетает ошибочка:(
Немогли бы вы показать пример??
← →
Юрий Зотов (2003-05-17 23:08) [5]Дык... с визуальным наследованием у меня не получилось, поэтому показывать, в общем-то, нечего. А без визуального - исходники CCPack, куда ж еще лучше? Скачать можно отсюда:
http://www.geocities.com/SiliconValley/Way/9006/index_r.html
Можно пойти таким путем - свои свойства добавляем в формы без ресурсов и регистрируем их через CCPack. А от них плодим формы с ресурсами и помещаем их в репозиторий (без всякой дополнительной регистрации). В проекте наследуемся от этих форм обычным образом. Вот такой путь проходит "на ура", хотя это и не совсем то, что хотелось бы.
← →
aga (2003-05-18 13:10) [6]Я скачивал CCPack, но мне надо для Д6 или Д7, а там только для Д4
← →
Юрий Зотов (2003-05-18 14:05) [7]Исходники же есть? Есть. Перекраиваете списки модулей в Uses, компилируете и устанавливате. Насколько помню, там еще будет ругань компилятора насчет Proxies - надо добавить в Required какой-то DCP (об этом есть в хелпе). Стандартный путь. Должно работать.
← →
Юрий Зотов (2003-05-18 14:09) [8]Да, насчет D4. Видимо, Вы скачивали просто CCPack (Combined Control), а здесь нужен CCPack50 (Custom Container).
← →
MBo (2003-05-19 06:19) [9]на codecentral.borland.com есть версия для D7
← →
aga (2003-05-19 17:34) [10]2Юрий Зотов
Спасибо посмотрю...
← →
aga (2003-05-19 17:45) [11]2Юрий Зотов
а как с вами можно связатся? например по e-mail?
← →
aga (2003-05-19 17:56) [12]2Юрий Зотов
>>Исходники же есть? Есть. Перекраиваете списки модулей в Uses, >>компилируете и устанавливате. Насколько помню, там еще будет >>ругань компилятора насчет Proxies - надо добавить в Required >>какой-то DCP (об этом есть в хелпе). Стандартный путь. Должно >>работать.
единсвенное что неработает так неопознан тип какой-то переменной :(
← →
Mike_Goblin (2003-05-19 19:17) [13]2 Юрий Зотов
Note that the IDE won"t allow you to add both published properties and components to a custom module at the same time. The workaround is to create a form with your custom properties in a package, and then have a descendent form in the repository which adds the components you want there by default.
Вот :)
← →
Юрий Зотов (2003-05-19 19:37) [14]> Mike_Goblin © (19.05.03 19:17)
А жаль. Майк, если не сложно, приведите источник - откуда эта цитата?
Все же эта фанатичная идея меня не оставляет. Если такое не реализовано в "родных" средствах IDE - так ведь она расширяемая... Правда, пока непонятно, что именно надо переписывать и есть ли для него средства регистрации в IDE.
← →
vuk (2003-05-19 19:48) [15]А если использовать такую вещь, появившуюся в D6, как установка флага csSubComponent? После этого в дизайнере видятся вложенные компоненты и меняются их свойства (правда, только из Object Inspector"а, а не из окна дизайнера). Я пробовал делать компонент из фрейма. Следующего фрагмента кода хватило. :o)
procedure TFrTestComp.AfterConstruction;
var
i : integer;
begin
inherited;
for i := 0 to ComponentCount - 1 do
Components[i].SetSubComponent(true);
end;
← →
vuk (2003-05-19 20:07) [16]>Я пробовал делать компонент из фрейма.
Не совсем ясно выразился. Фрейм, он, конечно же, и так компонент. :o) Я просто устанавливал его в палитру компонентов. Ну, и, до кучи пытался сделать так, чтобы можно было менять свойства вложенных компонентов.
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.06.05;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.008 c