Aceite apenas números e um ponto no Java TextField

Eu tenho um textField onde eu só aceito números do teclado, mas agora eu tenho que mudá-lo, pois é um "textField preço" e eu também preciso aceitar um ponto "." para qualquer tipo de preço.

Como posso mudar isso para conseguir o que preciso?

ptoMinimoField = new JTextField();
        ptoMinimoField.setBounds(348, 177, 167, 20);
        contentPanel.add(ptoMinimoField);
        ptoMinimoField.setColumns(10);
        ptoMinimoField.addKeyListener(new KeyAdapter() {
            public void keyTyped(KeyEvent e) {
                char caracter = e.getKeyChar();
                if (((caracter < '0') || (caracter > '9'))
                        && (caracter != '\b')) {
                    e.consume();
                }
            }
        });

questionAnswers(13)

yourAnswerToTheQuestion