Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by himitsu,
19. Sep 2014
Indem die Collections deine Komponente kennen. Mußt du einbauen, indem du das Notify überschreibst und dort deinem Kalender sagst "du, da hat sich was geändert ... mach ma".
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by himitsu,
19. Sep 2014
Damit kann nur die Collection drauf reagieren, wenn etwas in ihr geändert wird.
Die CollectionsItems haben kein Notify.
Standardmäßig wissen die Items nicht ob und in welcher Collection sie sich befinden,
außer man würde sich selber ein Owner/Parent-Feld in die Items einbauen und dann z.B. im Notify diese Variable setzen.
Hatte mal versucht das als generische Objektvorlage umzusetzen,...
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by himitsu,
19. Sep 2014
Aus welchem Grund?
Das TCollectionItem kennt doch nicht die übergeordnete TCollection. (leider)
Und ich weiß auch nicht, warum es schlecht sein soll, seine Eltern zu kennen.
Forum: Algorithmen, Datenstrukturen und Klassendesign
Delphi
by himitsu,
18. Sep 2014
Am Einfachsten geht das wohl mit einer Collection.
Ich glaub so ging das in etwa
TDeineDaten = class(TCollectionItem)
property Name: string; // z.B. 'Urlaub'
property Farbe: TColor;
end;
TDeinUrlaubsplan = class(TComponent)