自己定义一个类扩展Document接口(一般是继承PlainDocument),然后调用
JTextField.setDocument(...)

解决方案 »

  1.   

    JDK 1.4
    http://www-900.ibm.com/developerWorks/cn/java/j-merlin/part11/index.shtml1.3
    class WholeNumberDocument extends PlainDocument {
            public void insertString(int offs, 
                                     String str,
                                     AttributeSet a) 
                    throws BadLocationException {
                char[] source = str.toCharArray();
                char[] result = new char[source.length];
                int j = 0;            for (int i = 0; i < result.length; i++) {
                    if (Character.isDigit(source[i]))
                        result[j++] = source[i];
                    else {
                        toolkit.beep();
                        System.err.println("insertString: " + source[i]);
                    }
                }
                super.insertString(offs, new String(result, 0, j), a);
            }
        }