jasocul hat folgendes geschrieben: |
| Setze doch einfach FMyRecord in den Public-Bereich. Widerspricht zwar ein wenig den OOP-Konventionen, müsste aber funktionieren. |
Das wäre natürlich eine Möglichkeit, ich hab auch schon daran gedacht, aber dann kann man den Record hald nur zur Laufzeit ändern.
Grenzgaenger hat folgendes geschrieben: |
probier's mal so:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23:
| type TMyRecord = record S: string; I: integer; end;
TMyClass = class private FMyRecord: TMyRecord; public property MyRecord: TMyRecord read FMyRecord write FMyRecord; end;
[...]
var MyClass: TMyClass;
[...]
fMyClass:=TMyClass.Create; fMyRecord.S:='text'; fMyRecord.I:=5; | |
Der Eigenschaft MyRecord kann ich zwar einen TMyRecord zuweisen, aber eben nicht den einzelnen Datenfeldern von der Eigenschaft MyRecord.
FMyRecord kann ich natürlich schon Werte zuweisen, auch den einzelnen Datenfeldern, aber nur innerhalb der Unit...
Naja, trotzdem danke für eure Antworten!