Einzelnen Beitrag anzeigen

Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Adressbuch speichern und laden

  Alt 17. Okt 2010, 11:26
.. nun, so einfach ist es nicht.

Du solltest Dir erst einmal im Klaren sein wie
Du das Adressbuch organisieren willst.
Ein Buch hat mehr als eine Seite - in Deinem Fall also
mehr als eine PersonID (Datensatz).

Wenn Du nur den angezeigten Datensatz speicher willst,
musst Du die entsprechenden Inhalte der Editfelder
in eine Variable vom Typ PersonID schreiben.

Delphi-Quellcode:
type
  TPersonID = packed Record
    Nachname, Vorname: string [50];
    Strasse: string [70];
    PLZ: String [6 ];
    Ort: string [30];
    Geburtstag: string [10];
    Telefonnummer: string [30];
    Handynummer: string [40];
    EMail: string [60];
    Geschlecht: string [8 ];
  end;

var
  PersonIdFile : TFileStream;
  personID : TPersonID;
...
begin
  personID.Vorname := edit1.text;
  personID.Nachname := edit2.text;
  ...
  PersonIdFile := TFileStream.create({Dateiname});
  try
    PersonIdFile.writeBuffer(personID,sizeOf(TPersonID));
  finaly
    PersonIdFile.free;
  end;
end;
(code nicht getestet)

Wenn Du aber wirklich ein Adressbuch erstellen willst,
solltest Du dich ein wenig mit Listen beschäftigen.
- einfach verkettete Listen
- doppelt verkettete Listen
- TList

Was die Pflege des Programms noch erleichtert ist:
- den Klassen, Methoden und Variablen sprechende Namen geben
- Darstellung und Datenhaltung voneinander trennen

Grüße
Klaus
Angehängte Dateien
Dateityp: zip UAddressBook.zip (1,1 KB, 10x aufgerufen)
Klaus

Geändert von Klaus01 (17. Okt 2010 um 22:03 Uhr)
  Mit Zitat antworten Zitat