I am currently working on a small boardgame. I have to place "objects" on a Button array. I thought of placing the objects are 1*1 1*2 etc,They are represented by disabled buttons. Is there any way that i can move the spawned Disabled Buttons with Keylisteners of my keyboard, since i cant get it to work
public GuiP1() {
super();
Panel.setLayout(null);
this.add(Panel);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setTitle("BattleshipsP1");
this.setSize(640, 1000);
this.setVisible(false);
this.addKeyListener(new KeyListener() {
public void keyPressed(KeyEvent arg0) {
}
public void keyReleased(KeyEvent arg0) {
if (arg0.getKeyCode() == KeyEvent.VK_RIGHT) {
System.out.println("VK_RIGHT");
} else if (arg0.getKeyCode() == KeyEvent.VK_LEFT) {
System.out.println("VK_LEFT");
} else if (arg0.getKeyCode() == KeyEvent.VK_UP) {
System.out.println("VK_UP");
} else if (arg0.getKeyCode() == KeyEvent.VK_DOWN) {
System.out.println("VK_DOWN");
}
}
public void keyTyped(KeyEvent arg0) {
}
});
Grid();
this.setVisible(true);
}
It wont listen for keys beeing pressed
Thank you JFluX
Your KeyListeners are not working because the listened to component must be focusable and have focus for them to work. A kludge solution is to force the listened to component to have focus by
setFocusable(true)
requestFocusInWindow()
setFocusable(false)
on them.A much better solution is to use Key Bindings which isn't tied as closely to component focus.