Ver Mensaje Individual
  #2 (permalink)  
Antiguo 01/08/2012, 08:36
alexg88
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años, 8 meses
Puntos: 344
Respuesta: Duda con eventos

No entiendo muy bien tu problema, pero te faltan cosas.

¿A qué componente quieres asignarle el evento? No veo que uses el método addKeyListener en ningún componente para asignarle el evento.

El problema que veo que tienes es de conceptos y te complicas mucho.

Te dejo un ejemplo de como lo haría yo:

Código Java:
Ver original
  1. public class EjemploEventos extends JFrame{
  2.    
  3.     private static String labelPrefix = "La tecla pulsada es: ";
  4.     private JLabel etiqueta;
  5.     private JPanel panel;
  6.      
  7.      //Constructor
  8.     public EjemploEventos (){
  9.     //El primer componente será una etiqueta
  10.     etiqueta = new JLabel (labelPrefix + "      ");
  11.    
  12.     //El segundo componente será un cuadro de texto
  13.     JTextField texto = new JTextField();
  14.  
  15.     //Usando KeyAdapter no necesitas redefinir todos los métodos y usamos clases anónimas
  16. texto.addKeyListener(new KeyAdapter(){
  17.  
  18.  public void keyTiped (KeyEvent e)
  19.     {
  20.     etiqueta.setText(labelPrefix + e.getKeyChar());
  21.     }
  22. });    
  23.    
  24.     panel = new JPanel();
  25.     //Le añadimos un borde de dimensiones 30 x 50 x 10 x 50
  26.     panel.setBorder(BorderFactory.createEmptyBorder(30,50,10,50));
  27.    
  28.     //Los componentes se distribuirán por columnas
  29.     panel.setLayout(new GridLayout(0,1));
  30.    
  31.     //Añadimos el campo de texto y la etiqueta al contenedor
  32.     panel.add (texto);
  33.     panel.add (etiqueta);
  34.    
  35.     getContentPane().add(panel, BorderLayout.CENTER);
  36.    
  37.     }
  38.    
  39.     public static void main (String[] args)
  40.     {
  41.     try {
  42.     //Indicar Look & Feel
  43.         UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
  44.     } catch (Exception e) {}
  45.      
  46.      
  47.     EjemploEventos app = new EjemploEventos();   
  48.     app.pack();
  49.     app.setVisible(true);
  50.    
  51.    }
  52.    
  53.    
  54. }