You are on page 1of 8

Tutorial:

Validacin de
datos de
entrada
(JTextField)
Norman Salvador Aruz Lpez
-

Nota: El presente tutorial asume que usted ya sabe cmo crear, agregar
controles, formularios etc. a una aplicacin desde cero. Si usted no
maneja estas temticas se recomienda primero realizar los
tutoriales anteriores, y practicar continuamente para dominio de la
sintaxis.
En tutoriales anteriores vimos como validar datos de entrada utilizando
eventos. El siguiente ejemplo muestra paso a paso como validar datos de
entrada utilizando funciones internas propias de Java implementadas en
mtodos (funciones) personalizados, por tanto en este tutorial
aprenderemos:
1. Funciones personalizadas para validar entrada de datos
- Datos numricos enteros
- Formatos de fecha
- Cadenas vacas
2. Utilizacin de los formatos de la ventana de propiedades en la vista
de diseo
- Datos numricos
- Formatos de fecha
- Formatos de hora
- Cadenas vacas
Comencemos:
Para ambos casos crearemos un formulario con los controles que aparecen a
continuacin:

La lista de controles con sus nombres correspondientes se muestra a


continuacin:
Nombre del control
JLabel (Fecha)
JLabel (Nmero entero)
JLabel (Cadena vaca)
JDateChosser

Nombre dentro del


programa
No es necesario
No es necesario
No es necesario
txtFecha (se explica al
final)

JTextField
txtNmero
JTextField
txtCadenaVacia
Button (Guardar)
btnGuardar
El JDateChosser NO se agregar por ahora, se explicar luego en el
tutorial. Listo, ahora comenzaremos yendo al cdigo fuente para crear
nuestra funcin para validar datos de entrada:
1. Funciones personalizadas para validar datos de entrada
La idea dentro del cdigo fuente, ser pasar los datos de cada texto a los
mtodos correspondientes para que sean validados. Las funciones
(estaVacio, esNumero, esFechaValida) a continuacin debern ir luego
de la funcin constructor, y en el botn sern Guardar sern probadas una a
una para verificar su resultado.
Cadena Vaca
Agreguemos el cdigo siguiente.

La funcin anterior toma el dato recibido y verifica que no est vaci, de lo


contrario devolver falso o sea, el campo no est vaci, en todo caso los
campos de un formulario se supone que son para entrada de datos, por lo
tanto no deben estar vacos, es decir esta funcin deberemos usarla en
todos los campos que requieran una entrada de datos.
Datos numricos Enteros
Dentro del cdigo fuente, luego del constructor crearemos la siguiente
funcin:

La funcin anterior es de tipo boolean, recibe un parmetro de tipo String,


que en este caso ser el dato que sea ingresado en el JTextField, luego, en el
bloque try, la funcin tratar de convertir el dato entrante en un nmero y si
esto es posible regresar un verdadero, indicando que la entrada es vlida,

de lo contrario en el bloque catch, se apurar la excepcin y se retornar un


falso indicando que el carcter introducido no es un nmero entero. Es decir
si la cadena ingresada es un nmero entero la funcin validar el dato y se
ingresar de lo contrario, el usuario tendr que digitar nuevamente el dato
en el formulario.
Luego, para realizar la validacin, en el botn guardar escribimos lo
siguiente:

Lo que dice el bloque anterior es: Si, el dato en el texto llamado


txtNumero es Entero y No est Vaco entonces es un dato vlido de lo
contrario un mensaje avisar que el dato introducido no es vlido.
Datos cadena de tipo Fecha
Para controlar las entradas tipo fecha utilizaremos un control especial el cual
nos servir como un selector de fechas, esto para facilitar al usuario el
ingreso de una fecha con solo seleccionarla, vamos a la direccin web que
aparece a continuacin y descargamos el complemento:
http://www.java2s.com/Code/Jar/j/Downloadjcalendar133jar.htm
Ah descargaremos un archivo con extensin .jar comprimido en un
zip, es el primero de la lista:

Luego de esto descomprimimos el archivo y nos aparecer uno como el de


la siguiente imagen:
Para agregarlo, nos ubicamos en la vista de diseo, click
derecho sobre el panel de herramientas y luego click en la
opcin Palette Manager.

Luego nos aparecer una ventana desde la


cual agregaremos el control descargado y
despus podremos utilizarlo en el editor de
netbeans.
Para buscar el archivo .jar hacemos lo
siguiente: En la ventana que aparece del
Palette Manager click en el botn Add from
JAR y nos abrir una ventana para buscar
el archivo. El archivo descomprmelo en el
escritorio para que te sea fcil encontrarlo.

Seleccionamos la ubicacin del archivo, seleccionamos el archivo, y damos


click en siguiente, a continuacin aparecer lo siguiente:

Seleccionamos los controles que queramos agregar, son controles para


manejo de fechas, si quieres puedes agregar todos, el que mostrar en este
tutorial ser JDataChosser, luego de seleccionar dar click en siguiente.

Las carpetas mostradas anteriormente son


las carpetas para organizar las categoras
de controles encontradas en la ventana de
propiedades de netbeans. Seleccionas la
carpeta de la categora donde quieres que
se muestre el control, yo seleccionar en
Beans y das click en finish.
Luego de esto el control se mostrar en el
panel izquierdo y ahora s podemos
agregarlo, lgicamente si t agregaste
ms de un control la lista completa de
estos aparecer tambin:

La forma de uso se explica a continuacin:

Agregamos el control de fecha y a continuacin nos vamos al cdigo fuente


para capturar este dato agregando la siguiente funcin:

A medida que vallamos escribiendo las instrucciones Date datoAValidar y


SimpleDateFormat nos pedir agregar ciertas importaciones:

La funcin anterior recibe un dato de tipo fecha enviado desde el mtodo


del botn guardar, luego de ello trata de pasarla a un formato de fecha
aceptado y si no puede realizar la conversin significa que el dato no es
vlido, por lo cual enviar un false a la funcin principal.
En el botn guardar agregamos el siguiente bloque de cdigo:

Si el dato ingresado es una cadena fecha como especifica el control


entonces la entrada es vlida, de lo contrario se deber corregir el dato.

You might also like