Bueno pues me dejaron de tarea terminar este codigo que ahora solo indica que puedes ingresar numeros mas no letras...utiliazndo el keyadapter y el keytype
Cita:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class POOU2E0002 extends JPanel {
KeyAdapter ValidaDigitos = new KeyAdapter(){
public void keyTyped(KeyEvent Tecla){
char Caracter = Tecla.getKeyChar();
if (((Caracter < '0') || (Caracter > '9')) && (Caracter != KeyEvent.VK_BACK_SPACE)){
Tecla.consume();
JOptionPane.showMessageDialog(null, "Caracter incorrecto"+Caracter, "Mensaje Error",JOptionPane.INFORMATION_MESSAGE);
}
}
};
public POOU2E0002() {
setLayout(null);
JLabel JLEtiqueta1 = new JLabel("Valida digitos");
JLEtiqueta1.setBounds(new Rectangle(10,10,120,25));
add(JLEtiqueta1);
JTextField JTCampoTexto1 = new JTextField();
JTCampoTexto1.setBounds(new Rectangle(140,10,400,25));
JTCampoTexto1.addKeyListener(ValidaDigitos);
add(JTCampoTexto1);
JLabel JLEtiqueta2 = new JLabel("Valida letras a...z");
JLEtiqueta2.setBounds(new Rectangle ( 10,50,120,25));
add(JLEtiqueta2);
JTextField JTCampoTexto2 = new JTextField();
JTCampoTexto2.setBounds(new Rectangle (140,50,400,25));
JTCampoTexto2.addKeyListener(ValidaDigitos);
add(JTCampoTexto2);
JLabel JLEtiqueta3 = new JLabel("Valida letras A...Z");
JLEtiqueta3.setBounds(new Rectangle ( 10,90,120,25));
add(JLEtiqueta3);
JTextField JTCampoTexto3 = new JTextField();
JTCampoTexto3.setBounds(new Rectangle (140,90,400,25));
JTCampoTexto3.addKeyListener(ValidaDigitos);
add(JTCampoTexto3);
}
public static void main(String args []){
JFrame Ventana = new JFrame("POO -> POOU2E0002");
Ventana.setDefaultCloseOperation(Ventana.EXIT_ON_C LOSE);
Ventana.getContentPane().add(new POOU2E0002(),BorderLayout.CENTER);
Ventana.setSize(600,400);
Ventana.setLocationRelativeTo(null);
Ventana.setVisible(true);
}
}
import java.awt.event.*;
import javax.swing.*;
public class POOU2E0002 extends JPanel {
KeyAdapter ValidaDigitos = new KeyAdapter(){
public void keyTyped(KeyEvent Tecla){
char Caracter = Tecla.getKeyChar();
if (((Caracter < '0') || (Caracter > '9')) && (Caracter != KeyEvent.VK_BACK_SPACE)){
Tecla.consume();
JOptionPane.showMessageDialog(null, "Caracter incorrecto"+Caracter, "Mensaje Error",JOptionPane.INFORMATION_MESSAGE);
}
}
};
public POOU2E0002() {
setLayout(null);
JLabel JLEtiqueta1 = new JLabel("Valida digitos");
JLEtiqueta1.setBounds(new Rectangle(10,10,120,25));
add(JLEtiqueta1);
JTextField JTCampoTexto1 = new JTextField();
JTCampoTexto1.setBounds(new Rectangle(140,10,400,25));
JTCampoTexto1.addKeyListener(ValidaDigitos);
add(JTCampoTexto1);
JLabel JLEtiqueta2 = new JLabel("Valida letras a...z");
JLEtiqueta2.setBounds(new Rectangle ( 10,50,120,25));
add(JLEtiqueta2);
JTextField JTCampoTexto2 = new JTextField();
JTCampoTexto2.setBounds(new Rectangle (140,50,400,25));
JTCampoTexto2.addKeyListener(ValidaDigitos);
add(JTCampoTexto2);
JLabel JLEtiqueta3 = new JLabel("Valida letras A...Z");
JLEtiqueta3.setBounds(new Rectangle ( 10,90,120,25));
add(JLEtiqueta3);
JTextField JTCampoTexto3 = new JTextField();
JTCampoTexto3.setBounds(new Rectangle (140,90,400,25));
JTCampoTexto3.addKeyListener(ValidaDigitos);
add(JTCampoTexto3);
}
public static void main(String args []){
JFrame Ventana = new JFrame("POO -> POOU2E0002");
Ventana.setDefaultCloseOperation(Ventana.EXIT_ON_C LOSE);
Ventana.getContentPane().add(new POOU2E0002(),BorderLayout.CENTER);
Ventana.setSize(600,400);
Ventana.setLocationRelativeTo(null);
Ventana.setVisible(true);
}
}
y la tarea consiste en validar ahora letras de la "a...z" minusculas y mayusculas :