Hi,
Zitat von
Der_Unwissende:
Hi, Dein (bezogen auf den Threadsteller) und der zitierte Code sind eigentlich nur Paradebeispiele dafür, wie man sich ein paar Zeichen spart und in somit in Probleme läuft. Ist nicht böse gemeint! Nur schreiben die meisten Leute zu gutem Stil, dass zu jedem if ein begin ... end gehört, auch wenn nur eine Zeile folgt.
.....
So passieren solche Fehler einfach gar nicht, da immer klar ist, welches else zu welchem if gehört.
Ich bin nicht böse.
Ich hatte die Original-Schreibweise des Thread-Erstellers einfach nur übernommen.
Wäre es mein Code gewesen, so hätte er wohl ehr so ausgesehen:
Delphi-Quellcode:
procedure TfLogin.iAnmeldenClick(Sender: TObject);
begin
if (TBenutzer.FieldByName('Benutzername').AsString = 'Admin')
then begin
if (TBenutzer.FieldByName('Kennwort').AsString = eKennwort.Text)
then begin
ShowMessage('Anmeldung als Admin erfolgreich');
fLogin.Hide;
fAdminMenue.Show;
end;
end
else begin
if (TBenutzer.FieldByName('Benutzername').AsString = dbeBenutzername.Text)
then begin
if (TBenutzer.FieldByName('Kennwort').AsString = eKennwort.Text)
then begin
ShowMessage('Anmeldung als Benutzer erfolgreich');
fLogin.Hide;
fBenutzerMenue.Show;
end;
end;
end;
end;
In die
then if ...-Falle bin ich glücklicherweise schon recht früh getreten und habs mir gar nicht erst angewöhnt.
War nur zu Faul, den Code von f4k3 umzuformatieren.