Zitat von
DeddyH:
Ohne das jetzt ausprobiert zu haben: genügt nicht eine ReadOnly-Property, da man die Instanz ja nicht verändern möchte, sondern nur ihre Methoden aufrufen?
- Wenn die Property in den Published Bereich verschoben werden soll, dann würde sie im Inspektor nicht auftauschen, wenn sie r/o ist.
/EDIT: nicht ohne weiteres. Es gibt die Möglichkeit mit Rechtsklick auf dem
OI alle r/o Properties mit anzuzeigen.
- Er hat extra einen Setter geschrieben, damit er intern Assign() aufruft, was der vollkommen korrekte Weg wäre und diese Property auch Komponententauglich/Objektinspektor-tauglich zu machen.
- Grundsätzlich hast du Recht, es würde reichen, aber mit einem Setter und Assign() würde auch sowas möglich werden:
MyType.MyStringList := ListBox1.Items;
Bei deiner Lösung ohne Setter müsste man immer
MyType.MyStringList.Assign(ListBox1.Items);
nutzen. Im Endeffekt der gleiche Code, nur beim zweiten muss das auch der x. Anwender von TMyType dieses Wissen haben. Ersteres klappt nach Plug'n'Pray Methoden und verhält sich gleich zur
VCL.