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

Вниз

Как правильно вызвать RegisterPropertyEditor ?   Найти похожие ветки 

 
Juice ©   (2005-08-04 13:50) [0]

Вот такой код:

TSrcTableItem = class (TCollectionItem)
 private
   FSrcTable : TComponent;
 published
   property SourceTable: TComponent read FSrcTable write FSrcTable;
 end;

 TAutoPump = class(TComponent)
 private
   FSrcTablesOrder : TOwnedCollection;
 ...
 published
   property SrcTablesOrder : TOwnedCollection read FSrcTablesOrder write FSrcTablesOrder;
 end;

 ...

constructor TAutoPump.Create(AOwner : TComponent);
begin
 inherited Create(AOwner);
 FSrcTablesOrder := TOwnedCollection.Create(Self, TSrcTableItem);
...


Все типа как ОК, коллекция добавлена в комопонент, однако я хочу чтобы в нее могли в Design-time попасть не все компоненты ,а только определенного класса. Для этоо написал property editor :

TSrcTablesProperty = class(TComponentProperty)
 public
   procedure Edit; override;
 end;

Не получается его зарегистрировать, точнее регистрация проходит без ошибок но мой editor не выполняется.
Сначала сделал так:
RegisterPropertyEditor(TypeInfo(TComponent), TAutoPump, "SrcTablesOrder",
                        TSrcTablesProperty);
Потом попробовал так:
RegisterPropertyEditor(TypeInfo(TComponent), TAutoPump, "",
                        TSrcTablesProperty);
И только когда зарегистрировал так все заработало:
RegisterPropertyEditor(TypeInfo(TComponent), nil, "",
                        TSrcTablesProperty);
Но конечно такое счастье никому не надо. Что указывать во втором и третьем параметре ?


 
juice ©   (2005-08-04 15:34) [1]

Ответ найден, спасибо Юрию Зотову :)



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

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

Наверх




Память: 0.47 MB
Время: 0.062 c
2-1135709166
The Only
2005-12-27 21:46
2006.01.22
CoCreateInstance


9-1122895939
NewWonder
2005-08-01 15:32
2006.01.22
Реализация движка в dll


14-1135848534
Игорь Шевченко
2005-12-29 12:28
2006.01.22
Как не надо программировать


1-1134721882
Alex_KV
2005-12-16 11:31
2006.01.22
Перевод заголовочного файла С


2-1136440033
ezorcist
2006-01-05 08:47
2006.01.22
Изменить палитру на Image