style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">

Problema con JTextField y ActionListener()

Buenas tardes, tengo el siguiente código para crear JPanel y que dentro lleven un JLabel y un JtextField:

import java.awt.*;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.*;

public class LabelText extends JPanel implements KeyListener {
private JLabel lbl;
private JTextField txt;

// nX, nY Posición del JPanel
// nWL Ancho del JLabel
// nWT, nHT Ancho y alto del JTextField
// cEtiq Etiqueta del JLabel
public LabelText(int nX, int nY, int nWL, int nWT, int nHT, String cEtiq) {
// Posición y dimensión del JPanel
this.setLayout(null);
this.setLocation(nX, nY);
this.setSize(nWL + nWT + 10, nHT);
//this.setBackground(Color.red);

// Creo el JLabel
lbl = new JLabel(cEtiq);
lbl.setLocation(0, 0);
lbl.setSize(nWL, nHT);

// Creo el JTextField
txt = new JTextField();
txt.setLocation(nWL + 10, 0);
txt.setSize(nWT, nHT);
txt.addKeyListener(this);

// Añado los controles al JPanel
add(lbl);
add(txt);
}

@Override
public void keyTyped(KeyEvent e) {
throw new UnsupportedOperationException();
}

@Override
public void keyPressed(KeyEvent e) {
//throw new UnsupportedOperationException();
displayInfo(e);
}

@Override
public void keyReleased(KeyEvent e) {
throw new UnsupportedOperationException();
}

protected void displayInfo(KeyEvent e){
int keyCode = e.getKeyCode();

if (keyCode == 27) {
txt.setText("Pulsado ESCAPE");
}
}
}

Me los crea en un JFrame y me lo creo correctamente, pero no puedo escribir nada en ellos, no se como se hace escuchar al teclado y por ejemplo si pulso la tecla (ESCAPE = 27) que me muestre un mensaje, y si no que escriba normalmente como si nada.

Alguna recomendación?

Que estoy haciendo mal.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Jose Manuel

Así mirando por encima creo

Así mirando por encima creo que es porque hay dos eventos que se realizan y tu los estas marcando como no soportados. Entonces cuando ocurren se manda la excepción. ¿Que hay que hacer? Eliminar la siguiente linea: throw new UnsupportedOperationException();.
Debería funcionar.

style="display:inline-block;width:728px;height:90px"
data-ad-client="ca-pub-5164839828746352"
data-ad-slot="7563230308">