Disable input some symbols to JTextField

前端 未结 7 794
长发绾君心
长发绾君心 2020-12-05 21:07

How can I disable input of any symbol except digits to JTextField?

7条回答
  •  萌比男神i
    2020-12-05 21:55

    Just consume all chars that is not a digit like this:

    public static void main(String[] args) {
        JFrame frame = new JFrame("Test");
    
        frame.add(new JTextField() {{
            addKeyListener(new KeyAdapter() {
                public void keyTyped(KeyEvent e) {
                    if (!Character.isDigit(e.getKeyChar()))
                        e.consume();
                }
            });
        }});
    
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(400, 300);
        frame.setVisible(true);
    }
    

提交回复
热议问题