Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wie verwendet man TCollection (https://www.delphipraxis.net/97186-wie-verwendet-man-tcollection.html)

Andreas L. 6. Aug 2007 14:10


Wie verwendet man TCollection
 
Hi,
wie verwende ich TCollection. Folgenden Code hab ich schon:

Delphi-Quellcode:
type
 TMyCollectionItem = class(TCollectionItem)
   private
    fneVariable: String;
   published
    property NeVariable: String read fNeVariable write fNeVariable;
 end;

type
 TMyComp = class(TCustomPanel)
 private
  fItems: TCollection;
 published
  property Items: TCollection read fItems write fItems;
  constructor Create(AOwner: TComponent); override;
 end;

...
...

constructor TMyComp.Create(AOwner: TComponent);
begin

  fItems := TCollection.create(); //was muss ich hier übergeben?

end;
Ich frage mich, ob mein Ansatz überhaupt richtig ist?!?!

Außerdem, bewirkt TCollection, dass der User meiner Komponente im Objektinspektor, ähnlich wie bei ListView, die einzelnen Elemente zur Entwurfszeit hinzufügen kann?

Ciao,
Andy

Andreas L. 6. Aug 2007 17:57

Re: Wie verwendet man TCollection
 
Muss ich eventuell eine eigene TCollection deklarieren?

Delphi-Quellcode:
type
  TMyCollection = class(TCollection)
  //..???..\\
  end;

Kinimod8 6. Aug 2007 19:13

Re: Wie verwendet man TCollection
 
Eine TCollection ist ein Container, der mehrere Objekt speichert, die von TCollectionItem abgeleitet sind.

Beispiel: Du hast einige TContainerItems, die von TCollectionItem abgeleitet sind und Eigenschaften und Methoden beinhalten. Um sie zu verwalten, erzeugst du eine TCollection, die Klassen vom Typ TContainerItem aufnehmen kann:

Delphi-Quellcode:
MyCollection := TCollection.Create(TContainerItem);
MyContainerItem := MyCollection.Add as TContainerItem;
// ...


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:16 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz