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

Вниз

Как унаследовать компонент из одного пакета в другом?   Найти похожие ветки 

 
Kolan ©   (2008-05-21 13:59) [0]

Здравствуйте,
 Есть пакет (bpl), A. В этом пакете находится такой код:

 TKMultiImageButton = class(TGraphicControl)
 private
   {...}
   { Private declarations }
 protected
   { Protected declarations }
   {...}
 public
   { Public declarations }
   {...}
 published
   { Published declarations }
   {...}
 end;


procedure Register;

implementation

procedure Register;
begin
 RegisterComponents("KSoftWare", [TKMultiImageButton]);
end;


И есть второй пакет, B. В нем есть наследник вышеописанного класса:

 TScreenNavigationButton = class(TKMultiImageButton)
 private
   { Private declarations }
 protected
   { Protected declarations }
 public
   { Public declarations }
 published
   { Published declarations }
 end;

procedure Register;

implementation

procedure Register;
begin
 RegisterComponents("KTouchScreenControls", [TScreenNavigationButton]);
end;


Пакет А уже установлен. Если установить пакет B, то при запуске Delphi сообщает, что TKMultiImageButton не может быть зарегичтрирован, так как он уже был зарегистрирован в пакете A. Поместил пакет A в requires
пакета B, но это не помогло.

Вопросы:
1. Почему так получается?
2. Как исправить?

PS
 Я специально привел procedure Register;, так как, мне кажется, что проблемма в том, что эти процедуры находяться в модулях. Может их надо как-то вынести, но нужно ли и как правильно — незнаю.


 
Игорь Шевченко ©   (2008-05-21 14:38) [1]


> Поместил пакет A в requires
> пакета B, но это не помогло.


Не может быть


 
Kolan ©   (2008-05-21 15:18) [2]

>
> Не может быть

Благодарю, помогло :-).
Запутался в названиях пакета. Просто название секции совпадало с названием пакета A. А TKMultiImageButton находиться в пакете С, а регистрируется в секции с названием как у пакета A.



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
6-1204147706
Nail
2008-02-28 00:28
2009.06.21
CommFort for free (:


6-1203935494
manarov
2008-02-25 13:31
2009.06.21
Navigate неверно работает?


2-1241463269
Ars
2009-05-04 22:54
2009.06.21
Тип поля TClientDataSet


2-1238238509
sYSeRROR
2009-03-28 14:08
2009.06.21
Агент для КОнтакта


15-1239374642
Igorek
2009-04-10 18:44
2009.06.21
Многомодульный клиент