JTextField输入类型为int
时间: 2024-03-13 08:42:53 浏览: 88
控制JTextField的输入
JTextField 的输入类型默认为字符串,如果需要将输入类型强制为 int,可以在 JTextField 上添加一个 DocumentFilter,用于对输入进行过滤和格式化。以下是一个将 JTextField 输入限制为整数的示例:
```
JTextField textField = new JTextField();
PlainDocument doc = (PlainDocument) textField.getDocument();
doc.setDocumentFilter(new DocumentFilter() {
@Override
public void insertString(FilterBypass fb, int offset, String string, AttributeSet attr) throws BadLocationException {
if (string.matches("\\d+")) {
super.insertString(fb, offset, string, attr);
}
}
@Override
public void replace(FilterBypass fb, int offset, int length, String text, AttributeSet attrs) throws BadLocationException {
if (text.matches("\\d+")) {
super.replace(fb, offset, length, text, attrs);
}
}
});
```
这个 DocumentFilter 会检查用户输入的内容是否为数字,如果是,则允许输入,否则禁止输入。这样,就可以将 JTextField 的输入类型限制为整数。
阅读全文