olah!!
eh o seguinte: vc estah criando um objeto d uma classe anonima q implementa a interface KeyListener, certo? d acordo com a documentação, (http://java.sun.com/j2se/1.5.0/docs/api/java/awt/event/KeyListener.html) essa interface implementa 3 métodos: keyTyped, keyReleased e keyPressed. sempre q vc implementa uma interface em java, vc DEVE implementar (memso q seja com um nada) todos os metodos especificados pela interface. nesse caso, vc soh implementou um deles. mesmo q vc naum use, vc DEVE implementar os outros. exemplo:
campo1.addKeyListener(new KeyListener() {
public void keyTyped(KeyEvent e) {
JOptionPane.showMessageDialog(panelPrincipal, “Texto digitado”);
}
public void keyPressed(KeyEvent e) {
// Nada
}
public void keyReleased(KeyEvent e) {
// Nada também
}
});
outra solução eh vc usar uma classe adapter, q jah vem com todos os metodos implementados com “nada” e vc soh sobrescreve com os q vc quer realmente usar. mas veja q ha uma diferença: o primeiro eh uma interface, e o segundo (um adapter) eh uma classe q implementa essa interface, ou seja, em um caso ha implementação, noutro ha herança. se bem q na pratica possa parecer a mesma coisa, soh mudadndo d nome, naum eh!
com um adapter, seu codigo fica assim:
campo1.addKeyListener(new KeyAdapter() {
public void keyTyped(KeyEvent e) {
JOptionPane.showMessageDialog(panelPrincipal, “Texto digitado”);
}
});
[]'s!