Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Consulta escritura en jTextField

Estas en el tema de Consulta escritura en jTextField en el foro de Java en Foros del Web. Buen día a todos! Una consulta, yo tengo definido este método: Código: public static void soloLetrasYNumeros(java.awt.event.KeyEvent evt) { if ((!(Character.isDigit(evt.getKeyChar()) && (Character.isDigit(evt.getKeyChar())))) && (!Character.isAlphabetic(evt.getKeyChar()))) { ...
  #1 (permalink)  
Antiguo 16/10/2014, 08:06
 
Fecha de Ingreso: octubre-2014
Mensajes: 39
Antigüedad: 9 años, 6 meses
Puntos: 0
Consulta escritura en jTextField

Buen día a todos!

Una consulta, yo tengo definido este método:



Código:
public static void soloLetrasYNumeros(java.awt.event.KeyEvent evt) {
        if ((!(Character.isDigit(evt.getKeyChar()) && (Character.isDigit(evt.getKeyChar())))) && (!Character.isAlphabetic(evt.getKeyChar()))) {
            evt.consume();
        }


Que lo llamo desde el método "onKeyTyped" del jTextField para que solo me permita ingresar letras o numeros... El tema es que lo que si quiero que me permita ingresar el espacios en blanco, pero no me deja... alguien sabe como lo puedo adaptar, u otra forma de hacer un metodo que solo me permita ingresar letras, numero y espacios??

Lo que no quiero son caracteres especiales.


Saludos.
  #2 (permalink)  
Antiguo 16/10/2014, 14:58
 
Fecha de Ingreso: febrero-2014
Mensajes: 3
Antigüedad: 10 años, 2 meses
Puntos: 1
Respuesta: Consulta escritura en jTextField

Yo utilizo este método:

Código Java:
Ver original
  1. /**
  2.      * El método hace que un campo de texto JTextField no admita caracteres
  3.      * especiales como; , . - _ { } ´+ ¿ ' etc...
  4.      * <br><br> Utilizar el evento: KeyTyped
  5.      *
  6.      * @param evento Especificar el evento KeyEvent
  7.      */
  8.     public static void noCaracteresEspeciales(KeyEvent evento){
  9.         char caracter = evento.getKeyChar();
  10.         if(!Character.isLetterOrDigit(caracter)){
  11.             evento.consume();
  12.         }
  13.     }
  #3 (permalink)  
Antiguo 16/10/2014, 15:17
 
Fecha de Ingreso: octubre-2014
Mensajes: 39
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: Consulta escritura en jTextField

Esta claro, me funciona perfecto, no admite los caracteres especiales, pero tampoco me permite los caracteres espacio " "

No sabes como hacer que admita los espacios??

Saludoss
  #4 (permalink)  
Antiguo 17/10/2014, 00:41
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Consulta escritura en jTextField

Código Java:
Ver original
  1. if(!Character.isLetterOrDigit(caracter) || caracter != ' ')

De cualquier forma keyevent no es efectiva para validar la entrada campos. Deberias validar tambien a la hora de ejecutar la operacion.


Un saludo
__________________
If to err is human, then programmers are the most human of us
  #5 (permalink)  
Antiguo 28/10/2014, 07:03
 
Fecha de Ingreso: octubre-2014
Mensajes: 39
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: Consulta escritura en jTextField

Holaaa, tarde, pero seguro, estuve un tiempo parado con este proyecto, pero ahora volví, y les quería comentar que este asunto lo pude solucionar con este código:

public static void noCaracteresEspeciales(java.awt.event.KeyEvent evt){
char caracter = evt.getKeyChar();
if(!Character.isLetterOrDigit(caracter) && caracter != ' ') {
evt.consume();
}
}


Saludos
Gracias a todos por su ayuda.
  #6 (permalink)  
Antiguo 28/10/2014, 07:13
Avatar de Profesor_Falken  
Fecha de Ingreso: agosto-2014
Ubicación: Mountain View
Mensajes: 1.323
Antigüedad: 9 años, 8 meses
Puntos: 182
Respuesta: Consulta escritura en jTextField

Buenas,

Cierto, era && en lugar de ||, bien visto.

Un saludo
__________________
If to err is human, then programmers are the most human of us

Etiquetas: escritura, jtextfield
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:10.