Difucultades para limitar JTextField
Buenas tardes dias, noches a todos..
paso a lo siguiente:.
Estoy haciendo una aplicacion y todos los textos que introdusco en el JTextField se conviernte a mayuscula, si activo o desactivo la tecla Mayús no surte efecto, todo caracter introducida se pone en mayuscula, hasta ahi todo bien...
El problema bien a la hora de limitar en el JTextField, establecer un determinado numero de caracteres que se puden introducir
por ejemplo pongo esta linea de codigo para liminar una JTextField
Tengo esta clase para combertir todo en mayuscula las letras introducidas..que se llama UppercaseDocumentFilter
esa clase lo llamo desde el formulacio de la siguiente manera..
y desde el key pressed de cada JTextField es llamado de la siguiente forma
pero llamando la funcion para hacer mayusculas todo lo que se introduce..
el limite establecido lo pasa por alto, no lo respeta... solo si desabilito la funcion que hace a mayusculas
entonces si me respeta en limite establecido..
no se que estoy haciendo mal.. a la hora de llamar dichas funciones...
esto me a ocacionado que cuando recupero ese valor desde la base de datos no me muestra todo en el JTextField
y me muestra asi como en la imagen..
Quien al recuperarlos alinearlo hacia la izquierda..
tengo este linea pero no logro alinearlo
pero no logro alinearlo.. automaticamente al recuperar de la bd.
Quisiera tener un resultado como el de la siguiente imagen.
de antemano muchas gracias por sus sugerencias...
- Inicie sesión o regístrese para enviar comentarios
Tamaño maximo de cadena ingresada
Para poner un limite del tamaño de la cadena que quieras que se ingrese en un campo de texto(jtextfield)
se puede poner un KeyListener al Componente jtextfield que quieras validar de la siguiente manera:
Para poder responder tu segunda pregunta necesito ver el codigo y la explicacion detallada del problema o tus preguntas.
Dato curioso
En la doc de
viene un ejemplo de cómo hacer una subclase que te ponga el texto en mayúsculas, y para el límite de caracteres si mal no recuerdo tiene un método llamado
e incluso un constructor que te acepta un entero, para designar el número de columnas que se supone es el límite de caracteres que puedes ingresar. Podrías cotejarlo.
no me habia dado cuenta
no me habia dado cuenta con lo de setColumns.
Lo probe poniendo una un numero especibo y si funciona, pero cuando llamo a la clase para convetir a mayusculas igual lo pasa por alto ya no le respeta..
bueno bueno pasando a eso,, ya mejor desabilite eso de que solo sea mayuscula...
ahora mi problemita que tengo esque.. quiero ordenar el contenido del jtexfield a la izquierda.. pero deja describir que resultado deseo obtener
recupero la informacion de la base de datos...
y tengo varios texfield y muestro la informacion en cada uno de ellos,
hago esto de la siguiente forma..
lo que pasa esque en el texfiel muestra cierto cantidad de caracteres, pero el dato recuperado trae mas, tonces lo que se muestra
es la parte final de la cadena,
lo que quiero hacer es que me muestre desde el inicio de la cadena, y ya so quiero ver copleto pongo el cursor en el texfield y presiono la tecla fin o mueblo las teclas de navegacion.
si lo pongo a la derecha y el contenido es corto si lo ordena
txtAp.setHorizontalAlignment(txtAp.RIGHT);
------------------------------------------------------------------------
no se si alguien a tenido ese detalle. acepto sugerencias.. no se como hacer
para que se mestre el inicio de la cadena en jtexfiel.
ordenado a la izquierda
La solucion es poner JTextield.setCaretPosition(0); despues de cargar la info desde la base de datos.
Espero que alguien le sirva
Gracias por compartir
Gracias por compartir tu solución del caret position, me llamo la atencion que el limite te funciona y el uppercase no, yo me enfrenté a eso y pude setear un limite ademas de poner todo en mayuculas.
Compartiré mi solución más adelante.
Compartiré mi solución
Se le agradece... eso es bueno para compartir inf.