Laß das Exit weg.
Stattdessen ein Begin-End um alles (LoadFromFile bis hinter's Edit7.Text) drumrum ist doch auch ganz nett.
Außerdem:
- Warum wird eigentlich scheinbar ein SaveDialog für's Laden verwendet?
- Ich würde dir empfehlen den Komponenten ein paar orgentliche Namen zu geben, damit man weiß was was ist.
- Etwas Fehlerbehandlung kann nie schaden. (angefangen bei Try-Except, über eine Fehlermeldung, wenn die Datei nicht geladen wurde)
- Ich empfehle dir auch mal das Lesen/anschauen eines Tutorial für den Debugger und vorallem dessen Verwendung.
Zitat:
Wie kann ich das beheben?
Denn der Debugger hätte dir genau gezeigt, was da falsch läuft.
Und wenn du beim Testen auch mal den Datei-Dialog mit "Abbechen" oder mit einer zu kleinen Datei ausprobiert hättest, dann wäre dir dann auch das fehlende Begin-End aufgefallen.
Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
var
List: TStrings;
begin
if OpenDialog1.Execute then begin
List := TStringList.Create;
try
List.LoadFromFile(SaveDialog1.FileName);
if List.Count = 7 then begin // oder > 6 bzw. >= 7
Edit1.Text := List[0];
Edit2.Text := List[1];
Edit3.Text := List[2];
Edit4.Text := List[3];
Edit5.Text := List[4];
Edit6.Text := List[5];
Edit7.Text := List[6];
end else
ShowMessage('Ungültige Datei.');
finally
List.Free;
end;
end;
end;
Aber daß es wenigstens einen Ressourcenschutzblock (Try-Finally) gab, welcher auch noch richtig verwendet wurde, ist schonmal ein guter Anfang.