Guten Abend,
der KeyListener ist eher weniger das Problem, grundsätzlich funktioniert er in diesem JPanel. Aber auch nur wenn ich das JPanel in der main Klasse erzeuge:
Wenn ich aber das Objekt erst später erzeuge z.B. durch drücken eines JButtons:
wird das Panel zwar korrekt dargestellt, aber der KeyListener funktioniert nicht mehr...
Ich bin momentan echt ein bisschen ratlos.
Über Lösungsvorschläge wär ich sehr dankbar.
der KeyListener ist eher weniger das Problem, grundsätzlich funktioniert er in diesem JPanel. Aber auch nur wenn ich das JPanel in der main Klasse erzeuge:
Java:
public class Gui extends JFrame {
public int width = 1024;
public int height = 720;
public JButton btn_play = new JButton("Spielen");
public ActionHandler actionListener = new ActionHandler(this);
public Menu menu;
public static void main(String[] args) {
new Gui();
}
public Gui() {
setTitle("Spiel");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(width, height);
setLayout(null);
setResizable(false);
setVisible(true);
new Game(this); //<---
}
}
Java:
public class ActionHandler implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource() == gui.btn_play) {
System.out.println("Game starting");
gui.menu.removeMenu();
new Game(gui);
}
}
}
Ich bin momentan echt ein bisschen ratlos.
Über Lösungsvorschläge wär ich sehr dankbar.