Hallo,
Zitat:
Kann es denn sein, daß sich die Syntax seit Delphi5 geändert hat? Ich habe mir das Codebeispiel aus dem Buch "Delphi5 lernen" noch mal angeguckt. Da stehen runde Klammern.
Nein, da liegt wohl ein Tipfehler vor.
Zitat:
Bei den Editfeldern weiß ich wie das geht. [...] Aber wie geht das bei den Memofeldern?
Speicher doch die Anzahl der Zeilen Deiner Memos ab. Also beim Speichern:
Delphi-Quellcode:
procedure TForm1.Button16Click(Sender: TObject);
var
linecount : Integer;
//[...]
begin
linecount := MemoKontaktdaten.Lines.Count;
WriteLn (Datei, IntToStr (linescount));
for zeilen_num := 0 to linescount - 1 do
WriteLn (Datei, MemoKontaktdaten.Lines.Count [zeilen_num]);
end;
und beim Einlesen
Delphi-Quellcode:
var
linecount : string;
if OpenDialogAlles.Execute then
begin
AssignFile(Datei, OpenDialogAlles.Filename);
Reset(Datei);
ReadLn(Datei,String1);
EditName.Text:=String1;
ReadLn(Datei,String1);
EditEmail.Text:=String1;
ReadLn(Datei,String1);
EditTelefon.Text:=String1;
// Exemplarisch für MemoKontaktdaten
ReadLn (Datei, linecount);
try
MemoKontaktdaten.Lines.BeginUpdate;
MemoKontaktdaten.Lines.Clear;
for i := 0 to StrToInt (linecount) - 1 do
begin
ReadLn (Datei, String1);
MemoKontaktdaten.Lines.Add (String1)
end;
finally
MemoKontaktdaten.SelStart := 0;
MemoKontaktdaten.Lines.EndUpdate
end;
CloseFile(Datei);
end
Gruß