0

使用する矢印キーに基づいて、画像を画面上で移動させようとしています。現在、どのキーを押しても反応しません。テスト目的で、右矢印キーの使用のみを実装しようとしました。キーが押されたときに画像が応答するようにするにはどうすればよいですか? これは私がこれまでに持っているものです:

import java.applet.Applet; 
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
//import java.awt.event.ActionEvent;
//import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;


public class EC extends Applet{
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    int x=50;
    int y=50;
    int dx,dy;
    public void keyPressed(KeyEvent e)
    {
        int keyCode = e.getKeyCode();
        if(keyCode==KeyEvent.VK_RIGHT)
        {
            dx=1;
            x+=dx;
        }
    }
    public void keyReleased(KeyEvent e)
    {
        int keyCode = e.getKeyCode();
        if(keyCode==KeyEvent.VK_RIGHT)
        {
            dx=0;
        }
    }
    public void paint(Graphics g)
    {
        g.drawImage(IllustrationManager.player[0][0],x,y,null);
    }


}
4

2 に答える 2

2

KeyListener の使用に関する問題と、キー バインドを使用するより良い解決策については、キーボードを使用したモーションを参照してください。

于 2013-07-25T19:51:05.750 に答える
0
@Override
public void init(){
   addKeyListener(new KeyAdapter(){
       public void keyPressed(KeyEvent e)
       {
          int keyCode = e.getKeyCode();
          if(keyCode==KeyEvent.VK_RIGHT)
          {
              dx=1;
              x+=dx;
              this.repaint(); // forgot this initially
          }
       }
   });

}
于 2013-07-25T17:23:21.370 に答える