本帖最后由 kuruby 于 2010-01-02 13:55:24 编辑

解决方案 »

  1.   

    类型转换的时候要进行异常捕获
    尽管没研究过JOptionPane,只是提个解决方案
     int i = 0;
    do{
       String s = JOptionPane.showInputDialog(null, "请输入一个四位数", "测试",   
            JOptionPane.QUESTION_MESSAGE);
       try{
         i = Integer.parseInt(s);
       }catch (Exception e){
         i=0;
       }
    }while(i>10000|| i<1000);
      

  2.   

    JTextField textfield = new JTextField();
    ... // 限制 textfield只能输入4位正整数
    int ret = JOptionPane.showOptionDialog(null, textfield, "请输入一个四位数", JOptionPane.OK_CANCEL_OPTION, JOptionPane.PLAIN_MESSAGE, null, new String[] {"Ok","Cancel"}, null);
    if (ret == ...){
     ...
    }