Java 有没有办法限制JTextField的数值

Java 有没有办法限制JTextField的数值,java,swing,jtextfield,Java,Swing,Jtextfield,我使用KeyEvent让用户只输入数字 private void txtvalue1KeyTyped(java.awt.event.KeyEvent evt) { char c = evt.getKeyChar(); if(!(Character.isDigit(c))|| c==KeyEvent.VK_BACK_SPACE || c==KeyEvent.VK_DELETE){ evt.consu

我使用KeyEvent让用户只输入数字

private void txtvalue1KeyTyped(java.awt.event.KeyEvent evt) {                                 
    char c = evt.getKeyChar();
    if(!(Character.isDigit(c))|| c==KeyEvent.VK_BACK_SPACE ||  c==KeyEvent.VK_DELETE){
        evt.consume();
    }
}

我的问题是,有没有办法将文本中的max/min值限制为#number。例如,我想将文本字段的最小值限制为“1”,最大值限制为“12”

使用
JSpinner
。有关工作示例,请参见上的Swing教程部分


微调器将编辑数值和有效范围。

使用
JSpinner
。有关工作示例,请参见上的Swing教程部分


微调器将编辑数值和有效范围。

使用
JSpinner
。有关工作示例,请参见上的Swing教程部分


微调器将编辑数值和有效范围。

使用
JSpinner
。有关工作示例,请参见上的Swing教程部分


微调器将编辑数值和有效范围。

JFormattedTextField
DocumentFilter
JFormattedTextField
DocumentFilter
JFormattedTextField
JFormattedTextField
不要使用微调器KeyListener。例如,如果将文本粘贴到文本字段中,代码将无法工作。Swing具有更新和更好的API,如下所示。的可能副本不使用KeyListener。例如,如果将文本粘贴到文本字段中,代码将无法工作。Swing具有更新和更好的API,如下所示。的可能副本不使用KeyListener。例如,如果将文本粘贴到文本字段中,代码将无法工作。Swing具有更新和更好的API,如下所示。的可能副本不使用KeyListener。例如,如果将文本粘贴到文本字段中,代码将无法工作。Swing具有更新和更好的API,如下所示