Aquí unos pequeños "tip's" al momento de utilizar uno de estos objetos.
- Siempre es conveniente definir el tamaño que tendrá al momento de crearse, para que se adecue a la pantalla, aunque no quiere decir que no podamos escribir mas caracteres de los que se definen.
JTextField MiTexto = new JTextField(15);
- Si vamos a utilizar un campo de texto para realizar distintas operaciones, siempre debemos comprobar que no este vacío.
String MiTexto = textField.getText(); if (MiTexto.equals("")) System.out.print("El campo se encuentra vacío");
- Si vamos a introducir datos numéricos, es conveniente utilizar los jFormattedTextField's.
JFormattedTextField MiTexto = new JFormattedTextField(); Integer MiValor = (Integer) MiTexto.getValue();
- Si utilizamos jTextField's para mostrar datos fijos (que no pueden modificarse), lo conveniente es deshabilitarlo, para ello hay dos formas. Una es con "setEnabled()" y otra con "setEditable()".
jTextField.setEnable(false) jTextField.setEditable(false);
A diferencia del primero, el "setEditable()" permite que en el campo no pueda escribirse ningún dato, pero este se vera igual que cualquier otro, por ello es conveniente utilizar el "setEnabled()" en ciertas ocasiones, que coloca el campo en gris, para evitarle confusiones al usuario.
Recibe notificaciones por correo
9 Comentarios
Escribir ComentarioUna mejor forma de comprobar que el texto no esté vacío es:
Responderif(jTextField1.getText().equals(""))
System.out.print("El campo se encuentra vacío");
Jorge, es igual ;). La unica diferencia es que yo coloco el ".getText()" para de una vez utilizarlo en otras oportunidades y ya tenerlo dentro de una variable.
ResponderSi, pero para un programa que usé fué mas optimo, ya que usas menos recursos. Hay que recordar que para un programa grande cada byte de memoria ahorrado vale oro.
ResponderCorrecto, pero eso es válido si solo utilizaras cuando mucho dos veces la variable, pero si vas a utilizar la variable del "JTextField" en repetidas oportunidades no seria nada bueno y es muy poco estético llamarla por cada método en la que se requiera, me explico.
ResponderSi aparte de compararla con "If" necesitamos la variable para unirla con otra cadena, para validar un campo, o necesitamos pasarla a valor numérico, lo mas adecuado seria declararla y luego llamarla en los distintos procesos en que la vamos a utilizar.
Es decir, si tenemos varios métodos y estos utilizan dicha variable, no podemos, o mejor dicho, no deberíamos utilizar la llamada directa, deberíamos almacenarla en una variable y que esta pueda llamarse en todos esos métodos, me entiendes :)
Ok, entiendo la diferencia entre setEnabled y setEditable. Pero ahora bien, Resulta que tengo un JTextField que hice deshabilitar (micampo.setEnabled(false)) pero dependiendo del valor que éste cargue, se deberá poner su texto en un determinado color, con lo cual tengo micampo.setForeground(Color.RED) y no me da bolilla, sigue con su color gris sin cambiar.
ResponderPor lo que pase a hacer micampo.setEditable(false) y mi campo.setForegr... y si cambio su color, pero mi campo comenzó a adquirir foco cuando presiono TAB y eso no quiero que suceda. ¿Alguna idea?
Ok, imagino que da foco porque has habilitado el campo mas no lo has puesto editable, prueba colocando primero el color del campo y luego lo deshabilitas, parece algo que no tiene nada que ver pero se han visto casos, por experiencia una vez me paso así, sino funciona prueba con colocando tanto el enabled como editable y me cuentas...
Respondersi mostrico para comparar cadena de carateres siempre se debe utilizar el metodo equals()
ResponderQue tal amigo no se si me puedas ayudar, mi duda es como le puedo hacer para validar si un jformattedtextfield esta vacio ??
ResponderEn el post esta explicado, solo debes leer... Saludos!!
ResponderLamentablemente hay muchos usuarios en la red que han llegado al blog para escribir obscenidades, así que la moderación se hace necesaria. Recuerda utilizar un lenguaje correcto y espera a que sea aprobado.
Si necesitas publicar código haz click en "Conversión" para hacerlo legible.
ConversiónConversión