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

Key Listener cuando gane foco un botón

Estas en el tema de Key Listener cuando gane foco un botón en el foro de Java en Foros del Web. Buenas noches compañeros, estoy intentando hacer que, cuando el usuario ponga el foco en un botón, al pulsar la tecla Enter se ejecute tal botón. ...
  #1 (permalink)  
Antiguo 18/08/2014, 18:15
 
Fecha de Ingreso: julio-2014
Ubicación: España
Mensajes: 83
Antigüedad: 10 años, 3 meses
Puntos: 2
Key Listener cuando gane foco un botón

Buenas noches compañeros, estoy intentando hacer que, cuando el usuario ponga el foco en un botón, al pulsar la tecla Enter se ejecute tal botón. De momento tengo esto:

Código PHP:
        // Añadimos los botones de interacción que podrá usar el usuario
        
EjecutarStop = new JButton();
        
EjecutarStop.addFocusListener(new FocusAdapter() {
            public 
void focusGained(FocusEvent arg0) {
                
EjecutarStop.addKeyListener(new KeyAdapter() {
                    public 
void keyTyped(KeyEvent arg0) {
                        
//Si pulsamos la tecla "Enter" generamos que el programa empiece a funcionar
                        
if (arg0.getKeyCode()==KeyEvent.VK_ENTER){
                            if (!
timer2.isRunning()){
                                
timer2.start();
                            }else{
                                
timer2.stop();
                            }
                        }
                    }
                });
            }
        }); 
Pero no funciona el botón
  #2 (permalink)  
Antiguo 18/08/2014, 21:28
Avatar de farfamorA  
Fecha de Ingreso: noviembre-2010
Ubicación: Lima
Mensajes: 136
Antigüedad: 14 años
Puntos: 24
Respuesta: Key Listener cuando gane foco un botón

Me parece que no necesitas el evento focusListener, porque cuando el botón gana el foco, no esperas que pase nada o sí. El evento que quieres que se dispare es cuando se presiona la tecla "Enter" sobre el botón. Entonces sólo tendrías que implementar el keyListener.
Código Java:
Ver original
  1. ejecutarStop.addKeyListener(new KeyAdapter() {
  2.     public void keyReleased(KeyEvent arg0) {
  3.         if (arg0.getKeyCode() == KeyEvent.VK_ENTER){
  4.             ejecutarStop.actionPerformed();
  5.         }
  6.     }
  7. });

Salu2.

Etiquetas: foco, gane, key, listener, programa
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 04:14.