Einzelnen Beitrag anzeigen

Schwedenbitter

Registriert seit: 22. Mär 2003
Ort: Finsterwalde
622 Beiträge
 
Turbo Delphi für Win32
 
#7

AW: Von TStringList abgeleitete Klasse inkl. Objecten speichern

  Alt 9. Jul 2010, 08:22
Danke für die Tipps!

So klappt es leider nicht:
Delphi-Quellcode:
   {$M+}
   TDishList= Class(TStringList)                  // Object für Liste der Gerichte
              Private
                  Function GetSystemID(Index: Integer): Integer;
                  Procedure SetSystemID(Index: Integer; Const Value: Integer);
              Public
                  Constructor Create;
                  Destructor Destroy; Override;
                  Function AddDish(Value: TDishes): Integer;
                  Procedure DeleteDish(Index: Integer);
                  Procedure SaveToFile(Const FileName: String); Override;
                  Procedure LoadFromFile(Const FileName: String); Override;
                  Property SystemID[Index: Integer]: Integer
                     Read GetSystemID Write SetSystemID;
              End;
   {$M-}

// Liste in eine Datei speichern
Procedure TDishList.SaveToFile(Const FileName: String);
Var
   I            : Integer;
Begin
   If Count < 1 Then Exit;                        // es muss mind. 1 Eintrag da sein
   With TMemoryStream.Create Do
   Try
      WriteComponent(self);                     // <- inkompatible Typen
      SaveToFile(FileName);                     // alles in der Datei ablegen
   Finally
      Free;
   End;
End;
Wo ist hier mein Denkfehler?

Ich kann leider im Public-Bereich nichts vorweisen. Denn das Object selbst ist ja die Liste. Ich hatte auch versucht, mein Object von TComponent abzuleiten und in Public eine TStringList zu deklarieren. Das geht an sich. Beim Speichern bekomme ich aber auch immer nur eine Datei die 17 Bytes groß ist ...

Gruß, Alex
Alex Winzer
  Mit Zitat antworten Zitat