DOWNLOAD DOS EXEMPLOS AQUIOla pessoal!Nesse tutorial vamos mostrar uma maneira de como usar eventos do teclado para controlar algumas acoes nos nossos jogos. e realmente muito simples fazer isso! tudo que iremos fazer e implementar uma Interface na nossa classe, reescrever os metodos abstratos dessa interface, e adicionar um escutador de teclas no nosso JFrame!(Criem um pacote tutorial12 no nosso projeto JAVAGAMES2D com o arquivo Game.java)Vamos la!1o passo implemente na Classe Game.java a seguinte Interface: KeyListinerpublic class Game extends JFrame implements KeyListener{Quando fizer isso salve as alteracoes, como eu uso o Eclipse ele vai acusar um erro, informando que eu preciso adicionar a implementacao dos metodos da interface Keylistner, observe a figura abaixo:agora vamos usar um truque do Eclipse, observe o x vermelho antes de public class, de um clique sobre esse icone, que ira aparecer o seguinte:Agora basta dar um duplo clique em Add unimplmented methods, para que o Eclipse adicione automaticamente essas linhas de codigo no final da classe Game.java@Override public void keyPressed(KeyEvent e) { // TODO Auto-generated method stub } @Override public void keyReleased(KeyEvent e) { // TODO Auto-generated method stub } @Override public void keyTyped(KeyEvent e) { // TODO Auto-generated method stub }... O que temos ai e o seguinte: tres metodos sem retorno (void), que recebe um parametro do tipo KeyEvent, (caso queiram apaguem esses comentarios gerado pelo Eclipse)//TODO Auto-generated method stub@OverrideAgora para finalizar vamos adicionar no nosso metodo inicializar() o escutador de teclas que e que vai acionar esses tres metodos que foram criados toda vez que um evento de teclado for acionado!public void inicializar() { setTitle("Titulo do Jogo!"); setSize(janelaW, janelaH); setResizable(false); setDefaultCloseOperation(EXIT_ON_CLOSE); setLayout(null); setVisible(true); backBuffer = new BufferedImage(janelaW, janelaH, BufferedImage.TYPE_INT_RGB); //AQUI ESTAMOS ADICIONANDO UM ESCUTADOR DE TECLAS addKeyListener(this); }Falando brevemente sobre os tres metodos criados:O keyPressed e acionado no momento em que voce pressiona a tecla e enquanto ela estiver pressionadaO keyReleased e acionado no momento em que voce libera a tecla pressionadaO keyTyped e acionado toda vez que o usuario digitar um caractere em algum elemento que esta com o foco!Muito bem.... agora vamos ver um um bom exemplo, vamos exibir a tecla que o usuario pressionou e mover uma bola com as teclas direcionais....(Leia os comentarios com atencao!)import java.awt.*;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import java.awt.image.BufferedImage;import java.io.File;import javax.swing.ImageIcon;import javax.swing.JFrame;public class Game extends JFrame implements KeyListener{ BufferedImage backBuffer; int FPS = 30; int janelaW = 500; int janelaH = 500; //VAMOS EXIBIR A TECLA PRESSIONADA //E MOVER UMA BOLA COM AS DIRECIONAIS //OBSER ISSO LA NO METODO desenaharGraficos() char teclaPressionada; int xBola = 200; int yBola = 200; public void atualizar() { } public void desenharGraficos() { Graphics g = getGraphics(); //ISSO JA ESTAVA AQUI Graphics bbg = backBuffer.getGraphics();//ISSO TAMBEM JA ESTAVA AQUI... bbg.setColor(Color.WHITE); bbg.fillRect(0, 0, janelaW, janelaH); //PINTA O FUNDO COM UM QUADRADO BRANCO bbg.setColor(Color.RED); bbg.setFont(new Font("helvica",Font.BOLD,20)); bbg.drawString("Voce pressionou: "+teclaPressionada, 50, 100); //EXIBE UM TEXTO + O VALOR DA TECLA PRESSIONADA //QUE ESTA NA VARIAVEL teclaPressionada //DESENHA UMA BOLA VERMELHA NA TELA bbg.fillOval(xBola, yBola, 50, 50); //AGORA VEJA O CODIGO DO METODO keyPressed() //LA VAMOS DIZER O QUE VAI ACONTECER QUANDO UM TECLA FOR PRESSIONADA!!! //================================================================================== g.drawImage(backBuffer,