JFormattedTextField y MaskFormatter

Si bien dentro de las aplicaciones bajo swing (java) podemos utilizar un componente como el JTextField para capturar una entra de texto. Pero que sucede si esta entrada debe seguir un formato específico? o posee un tamaño obligatorio al cual debe llegar? Claros ejemplos de esto son al querer capturar un número de telefóno o un número de cédula (DNI).

Para ello se puede utilizar un componente conocido como JFormattedTextField. Al que podemos indicar el formato de nuestra entrada. Lo que tenemos que hacer es crear una instancia de la Clase MaskFormatter en base a un patrón y este enviarlo en el constructor del JFormattedTextField.

MaskFormatter patron = new MaskFormatter(“#########-#”);

JFormattedTextField campoEntrada = new JFormattedTextField(patron);

y listo nuestra entrada será validada, en este caso solo para números.

Si utilizamos NetBeans, deberemos colocar una instancia de la clase AbstractFormatterFactory en la propiedad FormatterFactory del elemento gráfico.

Formato JFormattedTextfield

Resulta muy útil en varias ocaciones.

Anuncios