if-Anweisung für Leerfelder
-
Hallo,
ich möchte meine Eingabefelder darauf hin überprüfen, ob auch wirklich was
reingeschrieben worden ist. Habe es so probiert:if (Form1->edZahlenanzahl->Text = '') { Form1->edZahlenanzahl = 0; }Klappt aber nicht. Wie kann ich daß überprüfen?
Gut wäre auch wenn eine Fehlermeldung erscheinen würde und beim betätigen dieser der Cursor ins jeweiligen Feld springt.Danke
yellow1
-
yellow1 schrieb:
if (Form1->edZahlenanzahl->Text = '')Das kann nicht funktionieren, da ein char-Literal nicht aus gar keinem Zeichen bestehen kann. Um zu überprüfen, ob eine AnsiString-Variable Text enthält, kannst du sie z.B. mit einem Leerstring ("") vergleichen.
-
was willst du mit:
yellow1 schrieb:
Form1->edZahlenanzahl = 0;bezwecken?
mfg
BigNeal
-
Ich möchte am liebsten daß wenn nichts eingegeben wurde eine fehlermeldung zum klicken erscheint und der cursor dann in daß jeweilige Feld springt
-
if(Edit1->Text=="") { Application->MessageBox("Nix da","Edit1",MB_OK|MB_ICONEXCLAMATION|MB_APPLMODAL); Edit1->SetFocus(); }
-
if(Form1->edZahlenanzahl->Text.IsEmpty()) { MessageBeep(0); ShowMessage("Bitte geben Sie ein gültigen Wert ein!"); Form1->edZahlenanzahl->SetFocus(); return; } // Tue was auch immer ...EDIT: Mist zu spät...
@Christian211
IsEmpty() eignet sich besser, da es imho auch Whitespaces als leer betrachtet.
-
IsEmpty() eignet sich besser, da es imho auch Whitespaces als leer betrachtet.
Kann ich so nicht nach vollziehen
if(Edit1->Text.IsEmpty()) Application->MessageBox("wer","leer",MB_OK|MB_ICONEXCLAMATION|MB_APPLMODAL);Ergibt keine Meldung wenn Leerzeichen drin sind:
-
Hab's ausprobiert, stimmt. Die beiden Methoden scheinen gleichwertig zu sein

Naja, dann war ich halt mit meiner Antwort nur zu spät dran

-
Danke, hat funktioniert
-
Ja, schade habe die Methode nie benutzt, wäre aber mal was gewesen, Whitespaces werden gefiltert. Naja, vielleicht in der 2006er

-
Hallo
Dazu ist doch die Funktion Trim() da.
bis bald
akari