![]() |
if-then-else
hallo zusammen,
warum bricht die abfrage bei diesem code ab wenn ein edit feld nich enabled ist
Delphi-Quellcode:
und bei der nicht? es müsste doch trotzdem der else teil ausgeführt werden! :gruebel:
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
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 |
Re: if-then-else
Zitat:
Code:
...:cat:...
if edit1.Enabled then
if edit1.Text = '' then edit1.SetFocus [color=#ff001b]else[/color] else if edit2.Enabled then if edit2.Text = '' then edit2.SetFocus [color=#ff001b]else[/color] else if edit3.Enabled then if edit3.Text = '' then edit3.SetFocus |
Re: if-then-else
und wenn man das in einen anweisungsblock einschließt? (begin end)
|
Re: if-then-else
Dann würde es gehen. ( sofern man es richtig macht ;) )
|
Re: if-then-else
nach sakuras methode geht es nicht
wenn bed1, bed2, bed2 dann mache was jetzt springt er aber ganz raus! |
Re: if-then-else
Hi Lol,
hier ein Beispiel mit begin und end:
Delphi-Quellcode:
IMHO sieht aber deine zweite Möglichkeit sauberer aus.
if edit1.Enabled then
begin if edit1.Text = '' then edit1.SetFocus end else if edit2.Enabled then begin if edit2.Text = '' then edit2.SetFocus end else if edit3.Enabled then begin if edit3.Text = '' then edit3.SetFocus end; Greetz alcaeus |
Re: if-then-else
Zitat:
|
Re: if-then-else
nochmal genau dazu, warum dein 1. Versuch
Delphi-Quellcode:
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:
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 (sobald ein Edit-Feld nicht enabled ist, wird eben abgebrochen)
Delphi-Quellcode:
Aber dein 2. Codeteil müßte doch funktionieren?
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;
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 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz