MrKidney Geschrieben 7. Oktober 2004 Geschrieben 7. Oktober 2004 Hallo Leutz, wie kann ich einem Edit-Feld anweisen, nur Ziffern anzunehmen? Ein MaskEdit-Feld möchte ich nicht nehmen, weil keine Maske angezeigt werden soll. Ich habe es versucht mit "KeyDown" oder "KeyUp", aber ich weiss leider nicht die "Namen" der Tasten 0 - 9 auf der Nummerntastatur oder auf der Normalen. Die virtuellen sind in der Hilfe von Borland erklärt, aber ich finde nichts über Buchstaben oder Zahlen. Man soll die Methode " Ord('M') " benutzen können, aber darüber habe ich auch nichts gefunden. Der User darf auch nur 13 Ziffern eingeben und ein Komma soll nach der Zehnten Stelle auch erscheinen. Ich hoffe das sind nicht zuviel Prob's auf einmal... Zitieren
robotto7831a Geschrieben 7. Oktober 2004 Geschrieben 7. Oktober 2004 Hallo, Du kannst doch als Maske folgendes nehmen. 0000000000,000;1; (<- Leerzeichen hinter dem letzen Semikolon) Frank Zitieren
MrKidney Geschrieben 7. Oktober 2004 Autor Geschrieben 7. Oktober 2004 Hi, das Problem dabei besteht, daß beim Tippen der ersten Ziffer bei der Ersten freien Stelle angefangen wird. Wenn der User aber nur 1 Stelle vor dem Komma möchte sieht das so aus: " 1 , 03" Das ist auch nicht gerade hübsch. Und dann wird es als "1000000000,03" gelesen. Und dann ist da noch, die Leerstellen sin schmaler als die Zeichen, bei Eingabe verrutscht das Komma. Leider nicht so einfach. Ich dachte auch, es wäre einfacher, aber DIN ISO muss eingehalten werden... :mod: Aber Dank für deine Antwort... KID :confused: Zitieren
Guybrush Threepwood Geschrieben 7. Oktober 2004 Geschrieben 7. Oktober 2004 Was denn für ein Edit Feld? Benutzt du die WinAPI oder die MFC? Zitieren
MrKidney Geschrieben 7. Oktober 2004 Autor Geschrieben 7. Oktober 2004 ich benutze Borland C++ Builder 6. Auf einem Formular habe ich mehrere MaskEdit-Felder platziert, in denen geschrieben werden kann. Ich benutze hauptsächlich WinApi. Nun hab ich noch eine Frage: Wie kann ich den Cursor hinter die letzte Stelle positionieren, wenn etwas drin steht? MaskEdit->SetCursor(z); funktioniert nicht. Da schreibt er immer "Zugriff auf SetCursor(int) nicht möglich". Thanks KID Zitieren
PuppetMaster Geschrieben 7. Oktober 2004 Geschrieben 7. Oktober 2004 void __fastcall TForm1::Edit1KeyPress(TObject *Sender, char &Key) { if((Key < '0' || Key > '9') && Key != 8) Key=0; }[/PHP] Das fällt mir da spontan ein Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.