MouseListener als anonyme Klasse

This commit is contained in:
Marc Koch 2020-04-29 16:06:42 +02:00
parent ab82d1e3df
commit 006b75777b
Signed by: marc
GPG Key ID: AC2D4E00990A6767
4 changed files with 12 additions and 20 deletions

View File

@ -41,21 +41,17 @@ public class Feld {
((int) (rechteck.getPara3() * 0.8)),
((int) (rechteck.getPara4() * 0.8)));
this.label.addMouseListener(new CustomMouseListener());
}
// Lokale Klasse für CustomMouseListener
class CustomMouseListener extends MouseAdapter {
// Auf Setzen des Feldes prüfen und ggf. Form zeichnen lassen
this.label.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent mouseEvent) {
public void mouseClicked(MouseEvent e) {
super.mouseClicked(e);
if (!gesetzt && Zug.isZugLaeuft()) {
setZeichen(Spiel.getZug().getSpieler().getForm());
Zug.setZugLaeuft(false);
}
}
});
}
public void setZeichen(Form form) {

View File

@ -67,7 +67,6 @@ public class Spielfeld {
}
for (int i = 0; i < felder.length; i++) {
felder[i].getLabel().setBounds((felder[i].getRechteck().getPara1() - Spielfeld.KORREKTUR_X),
(felder[i].getRechteck().getPara2() - Spielfeld.KORREKTUR_Y),
felder[i].getRechteck().getPara3(), felder[i].getRechteck().getPara4());

View File

@ -13,7 +13,6 @@ public class TicTacToe {
@Override
public void run() {
try {
//f = null;
f = new Fenster();
boolean nochEinSpiel = true;
while (nochEinSpiel) {
@ -21,11 +20,9 @@ public class TicTacToe {
nochEinSpiel = new Spiel(f).spielen();
// aufräumen
//f.setVisible(false);
Gewinner.setSpieler(null);
Zug.setZugNummer(0);
f.getSpielfeld().reset();
}
} catch (InterruptedException ie) {
System.err.println("Da ist was schief gelaufen!");

View File

@ -15,7 +15,7 @@ import java.io.IOException;
public class Fenster extends JFrame implements ActionListener {
private final MyPanel myPanel;
private final Spielfeld spielfeld;
private Spielfeld spielfeld;
private int fenstergroesse;
// Menüleiste
@ -32,6 +32,7 @@ public class Fenster extends JFrame implements ActionListener {
this.setzeTitel("Tic Tac Toe");
this.fenstergroesse = 600;
this.myPanel = new MyPanel();
this.getContentPane().add(this.myPanel);
// Menüleiste erzeugen
this.menue = new JMenuBar();
@ -67,7 +68,6 @@ public class Fenster extends JFrame implements ActionListener {
});
this.setLocationRelativeTo(null);
this.setResizable(false);
this.getContentPane().add(this.myPanel);
this.spielfeld = new Spielfeld(this);
this.setVisible(true);
}