![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DefineProperties
Cloude © (2005-05-22 06:57:00)Создаю к примеру компонент TMyComponent со своим методом DefineProperties:
type
TMyComponent = class(TComponent)
private
FCollection: TCollection;
procedure ReadCollection(Reader: TReader);
procedure WriteCollection(Writer: TWriter);
protected
procedure DefineProperties(Filer: TFiler); override;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
end;
implementation
constructor TMyComponent.Create(AOwner: TComponent);
begin
inherited;
FCollection := TCollection.Create(TCollectionItem);
end;
procedure TMyComponent.DefineProperties(Filer: TFiler);
begin
inherited;
Filer.DefineProperty('Collection', ReadCollection, WriteCollection, True);
end;
destructor TMyComponent.Destroy;
begin
FCollection.Free;
inherited;
end;
procedure TMyComponent.ReadCollection(Reader: TReader);
begin
Reader.ReadCollection(FCollection);
end;
procedure TMyComponent.WriteCollection(Writer: TWriter);
begin
Writer.WriteCollection(FCollection);
end;
Почему когда открываешь проект или запускаешь его возникает ошибка: "Error creating form: Error reading MyComponent1.Collection: Invalid property value."?
Cloude (2005-05-22 14:32:00) [1]Огромное Спасибо Ученик!
Ученик (2005-05-22 11:11:00) [2]>Cloude (22.05.05 06:57)
Reader.ReadValue;
Reader.ReadCollection(FCollection);