KeyListener не реагирует - PullRequest
       6

KeyListener не реагирует

0 голосов
/ 03 апреля 2011

Я пытаюсь использовать KeyListener, чтобы сделать что-то, когда кнопка m нажата, ему нужно добавить изображение в JPanel, однако он ничего не делает: /

Я использую:

        public void keyPressed(KeyEvent e) {
            if(e.getKeyChar()==('m')){
                panel.add(mario);
                Thread marioS = new AePlayWave("sm64itsamemario.wav");
                marioS.start();

            }

        }

    });

Edit:
Ответ заключается в том, чтобы установить фокус на панель перед попыткой вызвать слушателя:)

поэтому я добавил слушатель мыши, который устанавливает фокус на панель при нажатии:

panel.addMouseListener( new MouseListener(){

    @Override
    public void mouseClicked(MouseEvent e) {
        panel.requestFocusInWindow();

});
...