Java:KeyListener类不检测按键,只检测按键释放

Java:KeyListener类不检测按键,只检测按键释放,java,keylistener,Java,Keylistener,我正在构建一个非常简单的游戏来练习我的基本Java知识,而我的KeyManager类没有响应 package me.holdenew.game.keyinputs; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; public class KeyManager implements KeyListener { private boolean[] keys; public boolean u

我正在构建一个非常简单的游戏来练习我的基本Java知识,而我的
KeyManager
类没有响应

package me.holdenew.game.keyinputs;

import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

public class KeyManager implements KeyListener {

    private boolean[] keys;
    public boolean up, down, left, right;

    public KeyManager() {

        keys = new boolean[256];
    }

    public void update() {

        up = keys[KeyEvent.VK_W] || keys[KeyEvent.VK_UP];
        down = keys[KeyEvent.VK_S] || keys[KeyEvent.VK_DOWN];
        left = keys[KeyEvent.VK_A] || keys[KeyEvent.VK_LEFT];
        right = keys[KeyEvent.VK_D] || keys[KeyEvent.VK_RIGHT];
    }

    @Override
    public void keyPressed(KeyEvent e) {

        keys[e.getKeyCode()] = true;
        System.out.println(Integer.toString(e.getKeyCode()) + " pressed");
    }

    @Override
    public void keyReleased(KeyEvent e) {

        keys[e.getKeyCode()] = false;
        System.out.println(Integer.toString(e.getKeyCode()) + " released");
    }

    @Override
    public void keyTyped(KeyEvent e) {

    }
}

我添加了
print
语句,这些语句在我按键时被调用,因此我知道类设置正确。但是,如果我一次按多个键或按住一个键并按东西,则所有键都没有响应,只调用
keyreased
print语句,而不是
keyPressed
one语句。请您帮我解决这个问题好吗?

这可能是您的键盘(以及大多数键盘)的硬件限制。请参阅和。这可能是键盘(和大多数键盘)的硬件限制。见和。