我的关键侦听器/关键事件部分是否缺少某些内容,导致该Sprite无法在Java中移动

时间:2019-01-29 10:32:22

标签: java keylistener void keyevent keycode

我试图移动一个精灵,尽管没有出现错误,但即使我找不到任何问题,它仍然不会移动精灵。这可能是我想念的东西,或者不应该在那儿,但任何建议都值得赞赏

我尝试更改键码(VK_RIGHT等),但似乎没有任何更改会影响它并使它起作用。我正在使用Eclipse工作区,所以不确定是否可以这样

游戏页面

public void keyPressed(KeyEvent e) {
    if(e.getKeyCode() == KeyEvent.VK_D) player.right = true;
    if(e.getKeyCode() == KeyEvent.VK_A) player.left = true;
    if(e.getKeyCode() == KeyEvent.VK_W) player.up = true;
    if(e.getKeyCode() == KeyEvent.VK_S) player.down = true;

玩家页面

public boolean right,left,up,down;
private int speed = 4;

public Player(int x,int y) {
    setBounds(x,y,32,32);
}
public void tick() {
    if(right)x+=speed;
    if(left)x-=speed;
    if(up)y-=speed;
    if(down)y+=speed;
}    

我希望玩家在屏幕上按与按键方向相对应的方向移动,但是什么也没有发生,并且根本不移动

0 个答案:

没有答案