Hallo,
ich wollte das Spiel aus dem Tutorial von Quaxli etwas verändern, um mich ein wenig in der Materie nach vorn zu bewegen.
Angefangen hab ich jetzt damit, dass ich von dem blauen Startbildschirm weg will.
Also hab ich mir ein schönes Hintergrundbild ausgesucht, dem einen Button verpasst und Einen ActionListener für den Button eingebaut, der eigentlich doInit...() aufrufen soll, so wie es vorher die Enter-Taste gemacht hat.
Leider passiert rein gar nichts. Hab dann also mal geschaut, ob ich vielleicht den ActionEvent falsch benutzt hab aber der Button funktioniert. Hab auch schon versucht die KeyEvents auf dem Hintergrundpanel aufzurufen geht aber auch nicht. Hier mal die veränderten Ausschnitte aus der Klasse.
Wenn ihr nochwas sehen wollt sagt es.
Sieht jemand warum ich die Methode nichtmehr aufrufen kann?
ich wollte das Spiel aus dem Tutorial von Quaxli etwas verändern, um mich ein wenig in der Materie nach vorn zu bewegen.
Angefangen hab ich jetzt damit, dass ich von dem blauen Startbildschirm weg will.
Also hab ich mir ein schönes Hintergrundbild ausgesucht, dem einen Button verpasst und Einen ActionListener für den Button eingebaut, der eigentlich doInit...() aufrufen soll, so wie es vorher die Enter-Taste gemacht hat.
Leider passiert rein gar nichts. Hab dann also mal geschaut, ob ich vielleicht den ActionEvent falsch benutzt hab aber der Button funktioniert. Hab auch schon versucht die KeyEvents auf dem Hintergrundpanel aufzurufen geht aber auch nicht. Hier mal die veränderten Ausschnitte aus der Klasse.
Java:
HintergrundBild hgb = new HintergrundBild("resources/Logo.png");
JButton b = new JButton("Start");
public SpielFeld(int w, int h) {
this.setPreferredSize(new Dimension(w,h));
this.setBackground(Color.BLUE);
frame = new JFrame("Flieg Neiko, flieg");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(this);
frame.add(hgb);
hgb.add(b);
frame.addKeyListener (this);
frame.pack();
frame.setVisible(true);
Thread th = new Thread(this);
th.start();
b.addActionListener (new ActionListener() {
@Override
public void actionPerformed (ActionEvent e) {
doInitializiations();
System.out.println("Hi");
}
});
}
Wenn ihr nochwas sehen wollt sagt es.
Sieht jemand warum ich die Methode nichtmehr aufrufen kann?