17 jun. 2009

Bloquear teclas en JAVA en un JTextField

Con este clase podemos, en tiempo real, bloquear teclas a nuestro gusto para campos de texto que por ejemplo solo son de Letras, numeros o combinaciones.


package prueba;
import javax.swing.*;
import java.awt.*;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
// * @author Gerald
public class validarChar {

public void Vtexto(javax.swing.JTextField texto ) {
texto.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
char a =e.getKeyChar();
if (( ((int)a>=33 && (int)a<=64))||((int)a>=91 && (int)a<=96)|| ((int)a>=123 && (int)a<=223)){
e.consume();
}
}
});
}
public void Vtexnum(javax.swing.JTextField texto ) {
texto.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
char a =e.getKeyChar();
if ( ( ((int)a>=33 && (int)a<=45)) || ( ((int)a>=58 && (int)a<=63))||((int)a>=91 && (int)a<=96)|| ((int)a>=123 && (int)a<=223)){
e.consume();
}
}
});
}

public void DNI(javax.swing.JTextField texto ) {
texto.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
char a =e.getKeyChar();
if (!((int)a>=48 && (int)a<=57)){
e.consume();
}
}
});
}
}

3 comentarios:

Hidan minami dijo...

Gracias andava buscando como hacerle

Anónimo dijo...

Disculpa la ignorancia pero como uso con una cadena string??

xfa si lo pudieses explicar mas a detalle te lo agradeceria mucho

grax

devsx@ymail.com

Anónimo dijo...

Muchas gracias amigo, la verdad no ocupe al 100% tu metodo, pero si me sirvio lo de convertir a int el char, para que te de el codigo ASCII de esa tecla ='DD