RSS
people

Validar campos númericos en java – JTextField

Muchas vecesn en misproyectos propios he necesitado validar un campo de una pantalla para que sólo acepte números, esto es una tarea muy común en la mayoría de aplicaciones, sin embargo cada vez que lo necesité tuve que rehacer mi trabajo, así que he decidido crear un par de clases de apoyo para realizar esta tarea de forma más sencilla cuando lo necesite.

Aspectos a tener en cuenta:

  1. Cómo validar un campo en java para saber si es númerico o no?
  2. De que forma debo indicarle al usuario que ha introducido un número inválido?

Bueno pues estas cuestiones las he solventado de la siguiente forma:

  1. Realizando un parseo del contenido del campo de texto ya sea a entero, flotante, long o double usando sus clases Wrapper (Integer, Float, Long, Double)
  2. Una buena opción es cambia el color del texto o fondo del campo para indicar qued el campo es válido o no así:
Validación de números en Java, rojo: número inválido; blanco: número válido

Validación de números en Java, rojo: número inválido; blanco: número válido

Bueno la parte de la validación se puede realizar de la siguiente forma:

       public boolean isValid() {
		try {
			Long.parseLong(getText());
                        setBackground(Color.WHITE);
			return true;
		} catch (NumberFormatException nfe) {
                        setBackground(new Color(0XFF9999));
			return false;
		}
	}

y listo.

Para descargar el código fuente lo pueden hacer desde acá.

Share and Enjoy:
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks

2 Responses to “Validar campos númericos en java – JTextField”

  1. Gisell Says:

    gracias por la explicación, pero como se descarga el codigo completo?

  2. Miguel Says:

    Hola Gisell

    He actualizado la entrada ya que se me había olvidado adjuntar el código fuente, además he creado un proyecto de ejemplo de como se debería usar el campo en tus poryectos, espero que te sea útil.

    El proyecto está realizado con eclipse, por si lo quieres descargar e importar para provarlo.

    Salu2…

Leave a Reply