Trickydelphin Geschrieben 7. Mai 2004 Geschrieben 7. Mai 2004 Guten morgen, ich bastel gerade ein bißchen an einer GUI herum und habe ein Textfeld, in das nur Zahlen eingegeben werden sollen. Gibt es eine Möglichkeit ein Textfeld auf eine numerische Eingabe hin zu überprüfen??? Gruß Trickydelphin Zitieren
Jaraz Geschrieben 7. Mai 2004 Geschrieben 7. Mai 2004 Hi, einen DocumentListener auf das Document des Textfeldes registrieren und über changedUpdate oder insertUpdate Änderungen überprüfen. Numerisch kannst du mit Double oder Integer.parseInt(String s) überprüfen, ist es keine Zahl, gibts ne Exception. Gruß Jaraz Zitieren
Peeter Geschrieben 7. Mai 2004 Geschrieben 7. Mai 2004 In der Klasse Character gibt's die Methode "isDigit(char ch)". Da kannst du ganz bequem abfragen ob es ne Zahl ist oder nicht... Zitieren
Morbid_Soul Geschrieben 7. Mai 2004 Geschrieben 7. Mai 2004 Moin, oder eine eigene Klasse von PlainDocument ableiten und die insertString- Methode überschreiben. Innerhalb der Methode dann wie Jaraz oder Peeter beschrieben haben, prüfen ob es ne Zahl ist. Gruß, Peter Zitieren
Trickydelphin Geschrieben 7. Mai 2004 Autor Geschrieben 7. Mai 2004 Danke für die guten Antworten! Zitieren
PerdianMG Geschrieben 8. Mai 2004 Geschrieben 8. Mai 2004 Sowas z.b.: /** * A simple document extension, that acceppts only numbers as entries */ class IntegerNumberDocument extends PlainDocument { public void insertString (int off, String s, AttributeSet a) throws BadLocationException { StringBuffer buffer = new StringBuffer(); for(int i=0; i < s.length(); i++) { if(Character.isDigit(s.charAt(i))) { buffer.append(s.charAt(i)); } } super.insertString(off, buffer.toString(), a); } } JTextField textField = new JTextField("testText"); textField.setDocument(new IntegerNumberDocument()); 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.