Veröffentlicht 7. Mai 200421 j 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
7. Mai 200421 j 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
7. Mai 200421 j In der Klasse Character gibt's die Methode "isDigit(char ch)". Da kannst du ganz bequem abfragen ob es ne Zahl ist oder nicht...
7. Mai 200421 j 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
8. Mai 200421 j 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());
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.