nochmal genau dazu, warum dein 1. Versuch
Delphi-Quellcode:
if edit1.Enabled then
if edit1.Text = '' then edit1.SetFocus
else if edit2.Enabled then
if edit2.Text = '' then edit2.SetFocus
else if edit3.Enabled then
if edit3.Text = '' then edit3.SetFocus
nicht geht - dort wird das else halt nicht, so wie von dir wohl gewünscht zu den "if edit_.Enabled then"-Abfragen gezählt - es wird halt immer auf die IF-Abfrage angewendet, welche direkt davor ist ... in deinem Fall halt so:
(sobald ein Edit-Feld nicht enabled ist, wird eben abgebrochen)
Delphi-Quellcode:
if edit1.Enabled then begin
if edit1.Text = '' then begin
edit1.SetFocus;
end else begin
if edit2.Enabled then begin
if edit2.Text = '' then begin
edit2.SetFocus;
end else begin
if edit3.Enabled then begin
if edit3.Text = '' then begin
edit3.SetFocus;
end;
end;
end;
end;
end;
end;
Aber dein 2. Codeteil müßte doch funktionieren?
Delphi-Quellcode:
if edit1.Enabled and (edit1.Text = '') then edit1.SetFocus
else if edit2.Enabled and (edit2.Text = '') then edit2.SetFocus
else if edit3.Enabled and (edit3.Text = '') then edit3.SetFocus