События KeyListener явно не запускаются в java-апплете

Я только начал учиться программировать апплеты и Java GUI в целом, я пытаюсь сделать простая игра. На данный момент у меня есть основной класс (Game) и класс игрока (Player). У меня есть игрок, рисующий на экране, но я изо всех сил пытаюсь заставить ключевые события работать, любая помощь приветствуется!

Изображение игрока отображается отлично, но позиция не меняется, когда я нажимаю клавишу.

РЕДАКТИРОВАТЬ: для игрока опубликован неправильный код, обновлено

Game.java:

public class Game extends Applet {

    Player player;

    @Override
    public void init() {
        player = new Player(this);
        this.setSize(800, 600);
        addKeyListener(player);
    }

    @Override
    public void paint(Graphics g) {        
        player.paint(g);
    }



}

Player.java:

public class Player implements KeyListener {

    Game game;
    Image image;
    int x;
    int y;

    public Player(Game game) {
        this.game = game;
        x = 0;
        y = 0;
        image = game.getImage(game.getCodeBase(), "images/Player.png");
    }

    public void paint(Graphics g) {
        g.drawImage(image, x, y, game);
    }

    @Override
    public void keyTyped(KeyEvent e) {
        return;
    }

    @Override
    public void keyPressed(KeyEvent e) {
        switch (e.getKeyCode()) {
            case KeyEvent.VK_A:
                x -= 1;
                break;
            case KeyEvent.VK_D:
                x += 1;
                break;
            case KeyEvent.VK_S:
                y += 1;
                break;
            case KeyEvent.VK_W:
                y -= 1;
                break;
        }
        game.repaint();
    }

    @Override
    public void keyReleased(KeyEvent e) {
        return;
    }
}
7
задан mKorbel 29 February 2012 в 21:32
поделиться