Guten Abend zusammen,
ich versuche gerade mittels KeyBinding zu bewirken, dass man ein Programm z.B. mit der Esc-Taste beenden kann.
Ich habe folgende Klasse, die von JPanel erbt und die einem Window-Objekt (diese Klasse erbt von JFrame) hinzugefügt wird:
Leider passiert gar nichts, wenn ich die Esc-Taste drücke.
Vielen Dank schon mal für eure Hilfe!
ich versuche gerade mittels KeyBinding zu bewirken, dass man ein Programm z.B. mit der Esc-Taste beenden kann.
Ich habe folgende Klasse, die von JPanel erbt und die einem Window-Objekt (diese Klasse erbt von JFrame) hinzugefügt wird:
Java:
//...
public class GamePanel extends JPanel
{
//...
private Window window;
public GamePanel(Window w)
{
//...
window = w;
setSize(window.getContentPane().getSize());
setLocation(0, 0);
setLayout(null);
Action escapeAction = new AbstractAction()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
};
getInputMap(WHEN_IN_FOCUSED_WINDOW).put(KeyStroke.getKeyStroke("ESCAPE"), "escapeAction");
getActionMap().put("escapeAction", escapeAction);
//...
}
}
Vielen Dank schon mal für eure Hilfe!