checken ob textfeld nur zahlen enthält??
-
hallo!
ich habe einen dialog unter vc++ 7 und möchte ein eingabefeld checken ob da auch nur zahlen eingegeben wurden.
Im moment lese ich den wert aus und checke mit atoi ob sich der wert umrechnen läßt, wenn es buchstaben sind bekomme ich 0 zurück, das passt soweit aber was ist wenn der user z.B. 32bert eintippt, dann ist das auch ein gültiger wert laut atoi!!
fällt jemandem eine bessere lösung ein?
herzlichn Dank schonmal
l00P
-
Ich hab das so gemacht:
// Sind auch alle Zeichen Zahlen? CString strZahlen = _T("0123456789"); bool fIstZahl = true; for (int i = 0; fIstZahl && (i < f_strPlz.GetLength()); i++) { fIstZahl = strZahlen.Find(f_strPlz.GetAt(i), -1) == -1; }
-
Einfacher ist:
Edit-Feld -> Eigenschaften -> Formate
ein Häckchen bei Nummer
Dann kann man in diesem Feld nur Nummern eingebem

Gruß BS

-
danke estartu_de - funktioniert!
@ByteSlider - ist natürlich der einfachere Weg, hab auch danach gesucht scheinbar aber in der hitze des Gefächts übersehen

danke
lg
l00P
-
@estartu_de
// Sind auch alle Zeichen Zahlen? //CString strZahlen = _T("0123456789"); //bool fIstZahl; for (int i = 0; i < f_strPlz.GetLength(); i++) { //fIstZahl = strZahlen.Find(f_strPlz.GetAt(i), -1) == -1; /* es gibt noch veraltete C-Funktionen */ if(!isdigit(f_strPlz.GetAt(i))) break; } f_strPlz.Delete(i, f_strPlz.GetLength() -i);Nur so zur Info

-
Hihi, jaaa mit C stehe ich auf Kriegsfuß.
Ich hatte reines C in der Schule und von den 3 Semestern konnte man zwei knicken (1 x dummer Lehrer und 1 x Prüfungsvorbereitung) - also kenne ich wohl 99% der nützlichen Befehle nicht.
Aber das rausspringen aus der Schleife lasse ich doch lieber bleiben, dann ist ja mein schöner Rückgabewert zum Weiterarbeiten weg...
-
@estartu_de
Dafür schneidet meine alles nach der letzten (reinen)Zahl ab

Je nachdem was man haben will :p
-
ByteSlider schrieb:
Einfacher ist:
Edit-Feld -> Eigenschaften -> Formate
ein Häckchen bei Nummer
Dann kann man in diesem Feld nur Nummern eingebem

Gruß BS

naja meistens ist schon so, aber maybe will mal einer
eine editbox haben
wo er entweder zahlen oder buchstaben eingeben kann
z.b. ne suchfkt. nur zahlen = plz ( suche nach plz )
nur buchstaben = ort ( suche nach ort )
dann ist es schon wichtig in welcher datei ( tabelle ) er suchen soll
oder andere verhältnisse ( beispiele )