Главная страница
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.015 c
15-1239456757
{RASkov}
2009-04-11 17:32
2009.06.21
TIdFTP и Proxy


15-1239490609
Nic
2009-04-12 02:56
2009.06.21
Документооборот


2-1240982587
AIK
2009-04-29 09:23
2009.06.21
Required package VCL30 not found


2-1240949570
Niktar
2009-04-29 00:12
2009.06.21
tquery dbase


1-1207045289
dmitry_12_08_74
2008-04-01 14:21
2009.06.21
Как проверить при запуске программы, есть ли уже запущенная копия