KeyAdapter listener works on Windows, not Mac

I created a simple Nibbles (Snakes) game and everything works fine.

However, when I copy everything to my Mac (develop on a PC) and compile the same java files, the keyAdapter event listener to move my snake does not respond.

I'm not sure what is wrong.

here is a snippet, but if someone wants to take a look at the whole program, I can send it privately. THANK!

getThis().addKeyListener(new KeyAdapter()  {
        public void keyPressed(KeyEvent event) {                    
            if(event.getKeyCode() == KeyEvent.VK_UP)
                if(!glass.game.getDirection().equals("D"))
                    glass.game.setDirection("U");

            if(event.getKeyCode() == KeyEvent.VK_DOWN)
                if(!glass.game.getDirection().equals("U"))
                    glass.game.setDirection("D");

            if(event.getKeyCode() == KeyEvent.VK_LEFT)
                if(!glass.game.getDirection().equals("R"))
                    glass.game.setDirection("L");

            if(event.getKeyCode() == KeyEvent.VK_RIGHT)
                if(!glass.game.getDirection().equals("L"))
                    glass.game.setDirection("R");
          }
});   
+1
source share
1 answer

use KeyBindingsinstead KeyListener, KeyListenernot intended for listening KeyEventsin Swing JComponents, this listener for AWT components, for example here

+6

Source: https://habr.com/ru/post/1547525/


All Articles