Acepta solo números y un punto en Java TextField

Tengo un campo de texto donde solo acepto números desde el teclado, pero ahora tengo que cambiarlo porque es un "campo de texto de precio" y también tendría que aceptar un punto "." Para cualquier tipo de precios.

¿Cómo puedo cambiar esto para obtener lo que necesito?

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();
                }
            }
        });

Respuestas a la pregunta(12)

Su respuesta a la pregunta