Я хочу, чтобы пользователь мог получать ввод с клавиатуры пользователем, но я добавил все, что, как я думал, позволит моей программе сделать это, и все равно это не сработает. Что я делаю не так?KeyListener не работает в Java
class KeyInput implements KeyListener {
public void keyPressed(KeyEvent e) {
System.out.println("keyPressed");
}
public void keyReleased(KeyEvent e) {
System.out.println("keyReleased");
}
public void keyTyped(KeyEvent e) {
System.out.println("keyTyped");
}
}
public GameView() {
this.addKeyListener(new KeyInput());
}
Конструктор отлично работает, а KeyInput является внутренним классом объекта GameView. При запуске игры, если я нажимаю клавишу, на выходе системы ничего не печатается. Я что-то упустил? Благодаря!
О, я посмотрел на другом коде народов и найдено Мне нужно добавить: this.setFocusable (true); this.requestFocusInWindow(); – Mayron
Он не сказал мне этого в книге, которую я использовал, спасибо в любом случае извините ^^ – Mayron
Опубликуйте ответ, чтобы объяснить это решение вместо комментария. Затем вы можете пометить свой вопрос как разрешенный. – mcoolive