Dezimalkomma in Dezimalpunkt umwandeln
-
Hi,
ich möchte, dass wenn in eine Textbox ein (dezimal)Komma eingegeben wird, das Komma sofort in einen Punkt umgewandelt wird.(Damit ich nicht unbedingt einen Punkt eingeben muss, sondern einfach ein Komma eingeben kann)Ich hab schon versucht, den Wert der Textbox als CString abzufragen und das Komma durch einen Punkt zu ersetzen, was auch funktioniert hat. Dummerweise kann ich dann aber nur schlecht den String in einen double-Wert umwandeln. Wäre es ein int-Wert, könnte ich die Funktion GetDlgItemInt(...) anwenden. Doch leider hat diese Funktion einen Returnwert vom Typ int.
Wie kann ich also einen CString in einen double-Wert konvertieren?
Oder gibt es noch eine andere(evtl. elegantere)Lösung des Problems?Please help me if you can.
My e-m@il: armin@faltraeder.com
thx.
-
Ok, du könntest die WM_Char message für die Editbox abfangen, und dort dann
den Punkt umwandeln,
oder in der PreTranslateMessage schauen, ob die Editbox den Focus hat,
und dann dort den ',' durch einen '.' ersetzen.Devil
-
CString text; myItem.GetWindowText(text); text.Replace(',','.');