Hallo,
ich habe eine Klasse GameThread, wo ein Ball bewegt wird und Tastaturabfragen mit einem KeyListener gemacht werden. Wenn ich jetzt den gamethread im Konstruktor von ButtonEreignisse aufrufe, funktioniert alles richtig, aber wenn ich den Thread in der ActionPerformed Methode(also bei Buttonklick starten) bewegt sich nur der Ball und auf Tastaturdrücke wird nicht mehr reagiert.
Schonmal danke im Vorraus.
ich habe eine Klasse GameThread, wo ein Ball bewegt wird und Tastaturabfragen mit einem KeyListener gemacht werden. Wenn ich jetzt den gamethread im Konstruktor von ButtonEreignisse aufrufe, funktioniert alles richtig, aber wenn ich den Thread in der ActionPerformed Methode(also bei Buttonklick starten) bewegt sich nur der Ball und auf Tastaturdrücke wird nicht mehr reagiert.
Schonmal danke im Vorraus.
Java:
class ButtonEreignisse extends JPanel implements ActionListener { // ButtonEreignisse
JButton button1 = new JButton("Pause");
JButton button2 = new JButton("Start Computer");
JButton button3 = new JButton("Start ");
JButton button4 = new JButton("Beenden");
ButtonEreignisse() {
setPreferredSize(new Dimension(100, 100));
setBackground(Color.YELLOW);
setLayout(new FlowLayout());
setFocusable(true);
gamethread = new GameThread(); // funktioiert
gamethread.start();
button1.addActionListener(this);
button2.addActionListener(this);
button3.addActionListener(this);
button4.addActionListener(this);
add(button1);
add(button2);
add(button3);
add(button4);
}
@Override
public void actionPerformed(ActionEvent e) {
if(button3==e.getSource()) {
// Hier soll der Thread gestartet werden, nur Ball bewegt sich
}
button3.setEnabled(false);
}
}