Thema: Delphi Hauptformular speichern

Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#3
  Alt 11. Jun 2003, 11:13
Es gibt noch eine weitere Möglichkeit:

Du kannst ein einmal angepasstes Formular in einen Stream (TStream.ReadComponent, TStream.WriteComponent) schreiben und auch wieder aus einem Stream auslesen.

Das dürfte schneller gehen, und Du brauchst Dich um den aktuellen Status des Objektes keine Sorgen zu machen, denn es kommt genauso wieder raus, wie Du es reingeschrieben hast.

Es gibt nur ein Problem: Wenn Du die Klasse des Objektes änderst und neu compilierst kann das Programm mit einem alten de-serialisierten Objekt nichts mehr vernünftiges anfangen.

Du musst also in dem Fall die alte Klasse beibehalten, das Objekt hierhin einlesen, per Cast in das neue Objekt umwandeln, und dann wieder serialisieren - das lässt sich allerdings automatisieren.

Die Sache ist dann geschickt, wenn Du z.B. das Formular in einer Datenbank ablegen willst oder ähnliches. Zudem ist das Verfahren schneller, da das Objekt gleich in der richtigen Form geladen wird, und nicht erst anhand von INI-Einträgen jedesmal zur Laufzeit wieder neu umgebaut werden muss.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat