epelpad

El post que buscas se encuentra eliminado, pero este también te puede interesar

Validación JTextField JAVA (Números,Letras)

Hoy les traigo un código que les sera de buena utilidad, quien no se a topado con alguna restricción en la hora de agregar a un campo JTextField, supongo todos esto se hace para validar la información de entrada, digamos un campo edad debe venir en formato numérico, seria absurdo meter tu edad con letra, o en otro que únicamente admita letras.
Para esto necesitamos implementar la Clase de escucha del teclado, llamada KeyListener
y redefinir en método keyTyped, que hace este método KeyTyped pues este método se refiere a cuando una tecla se pulsa, es en este momento donde necesitamos la validación, pues nuestras aplicaciones no deberían de permitir un tipo de tecla en especial (la entrada de números o letras ,etc), como hacer esto????
Aquí la respuesta el código es fácil de hacer y entender.


El de Letras
 public void keyTyped(KeyEvent ke) {
            
            
             char c=ke.getKeyChar();
            
        
          if(Character.isDigit(c)) {
              getToolkit().beep();
              
              ke.consume();
              
              Error.setText("Ingresa Solo Letras";
              
          }
            
                    
        }


El de Números


  public void keyTyped(KeyEvent ke) {
            char c=ke.getKeyChar();
            
        
          if(Character.isLetter(c)) {
              getToolkit().beep();
              
              ke.consume();
              
              Error.setText("Ingresa Solo Numeros";
              
          }
        
        }






Aquí les dejo el link del programa: 


https://googledrive.com/host/0B6H2cOm_wRaDQ2lKSks2eTNVaFE/



Son dos programitas ambos hacen lo mismo uno esta hecho con la paleta de NetBeans y el otro
no




Aquí les dejo en imágenes como se hace


1.- Click Derecho sobre el JTextField

Events > Key > keyTyped




Validación JTextField JAVA (Números,Letras)

2.- Nos lleva al código a editar
java


3.- Vamos con el otro
jtextfield


4.- Lo editamos para que acepte solo letras
keylistener


5.- Probamos

Validacion JTextFileld


JTextField Letras


JTextField numeros



"El hombre es la medida de todas las cosas"
Protagoras

6 comentarios - Validación JTextField JAVA (Números,Letras)

TonyMalandra
el viejo truco de agregar un KeyListener en swing para validar un campo de texto. En GWT y Vaadin se hace algo parecido, sabelo
vga_carp
Hace un post de como abrir el eclipse.. crap
Ezewindows
como validar para números y letras la vez,, pero no espacios?
E_sama +1
Averigua el KeyCode del espacio, y pues con un if(keyCode="codigodeteclado" haces el consume(). Bueno eso creo yo, luego lo pruebo vale y disculpa por no contestar luego no me habia percatado
ea24
ya tiene rato esto, pero se puede usar de la misma forma que para los números una función de la clase Character, en concreto isWhiteSpace(Char c):
if(Character.isWhitespace(evt.getKeyChar())) {
evt.consume();
}
Gracias por el tuto @E_sama
franeg95
@E_sama Gracias por la info. A modo referencia la funcion que valida numeros podes hacer esto:

public void keyTyped(KeyEvent ke) {
if(Character.isLetter(ke.getKeyChar()))
ke.consume();
}

Y solo permite meter numeros. El de letras es algo diferente porque ademas de digitos tenes los caracteres como `+`+ñ´¡',etc
chirieleison
mmm entonces mejor usa esto?

if(Character.isDigit(c))
{
contador++;
}
else
{

getToolkit().beep();

evt.consume();

JOptionPane.showMessageDialog(null, "Ingrese ...";

contador lo use para la cantidad que para mi tiene no tiene q pasar de 4 digitos
sonygas
+10 puntotes papu porque le vas al Real Madrid
alagerga
private void jTextField_NumeroempleadoKeyTyped(java.awt.event.KeyEvent evt) {
// TODO add your handling code here:
if (!(evt.getKeyChar() >= '0' && evt.getKeyChar() <= '9')) {
evt.consume();
}
}