5
我剛開始學習編程小程序和一般的java GUI,我試圖做一個簡單的遊戲。目前,我有主類(遊戲)和玩家類(玩家),我讓玩家在屏幕上畫畫,但我努力讓關鍵事件起作用,任何幫助表示讚賞!KeyListener事件顯然沒有在Java小程序中觸發
播放器圖像顯示非常好,但是當我按下某個按鍵時,位置不會改變。
編輯:錯誤的代碼發佈給玩家,更新
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;
}
}
1)*「我剛開始學習編程的小程序,和一般的Java GUI」 *避免applet和學習使用框架。它們更簡單。 2)這個千年,使用Swing而不是AWT。 3)applet大小由HTML設置,不要在'init()'中調用'setSize()'。 – 2012-02-29 19:17:12