Установка JFormattedTextField для принятия только разрешенных значений
Как мне создать JFormattedTextField
это только принимает набор цифр и не позволяет пользователю вводить буквы или любые другие символы, кроме 0123456789?
1 ответ
Решение
Для этого вам нужно создать свой собственный KeyListener, следующий код покажет вам, как этого добиться
JFormattedTextField textField = new JFormattedTextField();
textField.addKeyListener(new KeyAdapter() {
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
char c = e.getKeyChar();
if(!(Character.isDigit(c) || c == KeyEvent.VK_BACK_SPACE || c == KeyEvent.VK_DELETE)) {
Toolkit.getDefaultToolkit().beep();
e.consume();
}
}