viernes, 1 de abril de 2011

Otra forma de Limitar la cantidad de caracteres, números o decimales en java

Para mejorar la restricción a un JTexBox se puede usar la propiedad "setDocument" de los
cuadros de texto en java, de la siguiente forma.

JTextBox txt=new JTextBox();
txt.setDocument(new LimitadorCadena(txt,20));
En este ejemplo podemos ver que el modo de usando el segundo parametro para indicar
cuantos caracteres son permitidos.

JTextBox txt=new JTextBox();
txt.setDocument(new LimitadorDecimal(txt,10,3));
En este otro ejemplo se muestra el uso para restringir el ingreso de números decimales.

JTextBox txt=new JTextBox();
txt.setDocument(new LimitadorEnteros(txt,10));
No creo que necesite explicación.
(claro hay que poner las clases en el mismo paquete)

La magia se encuentra en las clases "Limitar" Decimales, Enteros y Cadena.
(cualquier duda o mejora aquí pueden publicarla con confianza)

En todas las clases el truco es sobrecargar el método "insertString" de PlainDocument.

Descargar
Esta es una solución mejorada de la que publiqué hace algún tiempo...
perdón por no dar mucha explicación.

No hay comentarios:

Publicar un comentario