Einzelnen Beitrag anzeigen

SurelyNot

Registriert seit: 3. Dez 2013
4 Beiträge
 
#3

AW: Referenzierung u. Serialisierung von Subkomponenten

  Alt 16. Feb 2015, 14:31
Brett ---> Kopf!

Danke erstmal für die Anwort. Das habe ich gerade so ausprobiert und es geht natürlich sofort ...

Da ich das SubThing Property gerne sehen und drin rum schreiben würde, habe ich noch ein wenig weiter gebastelt.

Variant 1: SubThing ist nicht im PropertyInspector, geht ... das zu sehen wäre aber besser.
Delphi-Quellcode:
  TSubThingUser = Class(TComponent)
  public
    property ReferencedSubThing : TSubThing read GetReferencedSubThing;
  published
    property ReferencedSubThingOwner : TSubThingOwner read FReferencedSubThingOwner write FReferencedSubThingOwner;
  End;
Variant 2: SubThing ist im PropertyInspector, es wird aber wieder mehrfach gespeichert, weil per SetSubComponent geschrieben wird.
Delphi-Quellcode:
  TSubThingUser = Class(TComponent)
  published
    property ReferencedSubThing : TSubThing read GetReferencedSubThing;
    property ReferencedSubThingOwner : TSubThingOwner read FReferencedSubThingOwner write FReferencedSubThingOwner;
  End;
Variant 3: SubThing ist im PropertyInspector, es wird wegen stored false nicht im User gespeichert, der Owner bekommt die Änderungen aber mit und schreibt sie.
Delphi-Quellcode:
 TSubThingUser = Class(TComponent)
  published
    property ReferencedSubThing : TSubThing read GetReferencedSubThing stored FALSE;
    property ReferencedSubThingOwner : TSubThingOwner read FReferencedSubThingOwner write FReferencedSubThingOwner;
  End;

Variante 3 ist das, was ich wollte und scheint erstmal anstandslos zu funktionieren. Die Klärung der Frage, warum es Sinn macht, einem
read-only Property - das eigentlich gar nicht schreiben kann, mitteilen zu müssen, dass es nichts schreiben soll, überlasse ich schlaueren
Leuten.

Danke nochmal.
  Mit Zitat antworten Zitat