Edit Feld auf Typ prüfen
-
Hallo zusammen,
kann mir mal kurz jemand helfen...
Ich habe folgendes Problem:Der User soll in nem Edit Feld einen Wert zwischen 0 und 500 eingeben.
Es funktioniert bei mir soweit wenn Zahlen (int) eingegeben werden.
Aber sobald Buchstaben oder so eigegeben werden (Fehleingaben) schmiert das
Projekt ab.Hier mal der Ausschnitt...
mir steht grade einer aufm Schlauch...
Ich will also ganz eifach die fehlerhaften eingaben (alles außer integer zwischen 0 u. 500) abfangen...int TDatei::auswaehlen2(void) { if (((Form1->Edit1->Text.ToInt()>=0) && (Form1->Edit1->Text.ToInt()<=500)) == NULL) { Application->MessageBox("Bitte geben sie bei \"min. Bauteildicke\" einen Wert zwischen 0 und 500 ein.", "Falsche Eingabe", MB_OK); Form1->Edit1->Clear(); return 1; } TList* ZwischenListe=new TList(); ZwischenListe->Clear(); for (int i=0; i<StartListe->Count; i++) { Datensatz = (StrukturDuebel *)StartListe->Items[i]; if (((Form1->ComboBox1->Text == Datensatz->einsatzbereich) || (Form1->ComboBox1->Text == "(Alle)")) && ((Form1->ComboBox2->Text == Datensatz->baustoff) || (Form1->ComboBox2->Text == "(Alle)"))) { ZwischenListe->Add(Datensatz); } }
Gruß
Niko
-
Siehe FAQ, "Edit - nur Zahlen erlauben".
-
Hallo
da solltze doch statt ToInt() ein IntToDef(0) langen
MfG
Klaus
-
Hallo,
hab das Problem jetzt mit der Funktion
TryStrToInt() gelöst.Gruß
Niko
-
Benutze doch ein MaskEdit.