JFrame richtig implementiert
This commit is contained in:
parent
bd5c773204
commit
736a0712db
|
|
@ -13,11 +13,10 @@ import java.awt.event.WindowAdapter;
|
||||||
import java.awt.event.WindowEvent;
|
import java.awt.event.WindowEvent;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
||||||
public class Fenster extends JPanel implements ActionListener {
|
public class Fenster extends JFrame implements ActionListener {
|
||||||
|
|
||||||
private final JFrame fenster;
|
private final MyPanel myPanel;
|
||||||
private MyPanel myPanel;
|
private final Spielfeld spielfeld;
|
||||||
private Spielfeld spielfeld;
|
|
||||||
private int fenstergroesse;
|
private int fenstergroesse;
|
||||||
|
|
||||||
// Menüleiste
|
// Menüleiste
|
||||||
|
|
@ -27,11 +26,11 @@ public class Fenster extends JPanel implements ActionListener {
|
||||||
private JMenu optionen;
|
private JMenu optionen;
|
||||||
|
|
||||||
// Datei
|
// Datei
|
||||||
private JMenuItem optionFenstergroesse;
|
private final JMenuItem optionFenstergroesse;
|
||||||
private JMenuItem loescheSpielstaende;
|
private final JMenuItem loescheSpielstaende;
|
||||||
|
|
||||||
public Fenster() {
|
public Fenster() {
|
||||||
this.fenster = new JFrame("Tic Tac Toe");
|
this.setzeTitel("Tic Tac Toe");
|
||||||
this.fenstergroesse = 600;
|
this.fenstergroesse = 600;
|
||||||
this.myPanel = new MyPanel();
|
this.myPanel = new MyPanel();
|
||||||
|
|
||||||
|
|
@ -54,10 +53,10 @@ public class Fenster extends JPanel implements ActionListener {
|
||||||
this.optionen.add(optionFenstergroesse);
|
this.optionen.add(optionFenstergroesse);
|
||||||
this.optionen.add(loescheSpielstaende);
|
this.optionen.add(loescheSpielstaende);
|
||||||
|
|
||||||
this.fenster.add(menue, BorderLayout.NORTH);
|
this.add(menue, BorderLayout.NORTH);
|
||||||
|
|
||||||
this.fenster.setSize(fenstergroesse, fenstergroesse + 50);
|
this.setSize(fenstergroesse, fenstergroesse + 50);
|
||||||
this.fenster.addWindowListener(new WindowAdapter() {
|
this.addWindowListener(new WindowAdapter() {
|
||||||
public void windowClosing(WindowEvent e) {
|
public void windowClosing(WindowEvent e) {
|
||||||
try {
|
try {
|
||||||
Speicher.spielstaendeSpeichern();
|
Speicher.spielstaendeSpeichern();
|
||||||
|
|
@ -67,8 +66,12 @@ public class Fenster extends JPanel implements ActionListener {
|
||||||
System.exit(0); // sofortiges Programmende
|
System.exit(0); // sofortiges Programmende
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
this.fenster.setLocationRelativeTo(null);
|
this.setLocationRelativeTo(null);
|
||||||
this.fenster.setResizable(false);
|
this.setResizable(false);
|
||||||
|
|
||||||
|
|
||||||
|
this.getContentPane().add(this.myPanel);
|
||||||
|
this.spielfeld = new Spielfeld(this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void hinzufuegen(Component c) {
|
public void hinzufuegen(Component c) {
|
||||||
|
|
@ -85,32 +88,24 @@ public class Fenster extends JPanel implements ActionListener {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void newSpielfeld() {
|
public void newSpielfeld() {
|
||||||
this.myPanel = null;
|
|
||||||
this.spielfeld = null;
|
|
||||||
this.myPanel = new MyPanel();
|
|
||||||
this.fenster.getContentPane().add(this.myPanel);
|
|
||||||
this.spielfeld = new Spielfeld(this);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void macheSichtbar(boolean sichtbar) {
|
public void macheSichtbar(boolean sichtbar) {
|
||||||
this.fenster.setVisible(sichtbar);
|
this.setVisible(sichtbar);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setzeTitel(String titel) {
|
public void setzeTitel(String titel) {
|
||||||
this.fenster.setTitle(titel);
|
this.setTitle(titel);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setzeFenstergroesse(int fenstergroesse) {
|
public void setzeFenstergroesse(int fenstergroesse) {
|
||||||
this.fenstergroesse = fenstergroesse;
|
this.fenstergroesse = fenstergroesse;
|
||||||
this.fenster.setSize(fenstergroesse, fenstergroesse + 50);
|
this.setSize(fenstergroesse, fenstergroesse + 50);
|
||||||
this.spielfeld.resizeFelder(fenstergroesse);
|
this.spielfeld.resizeFelder(fenstergroesse);
|
||||||
this.myPanel.repaint();
|
this.myPanel.repaint();
|
||||||
}
|
}
|
||||||
|
|
||||||
public MyPanel getMyPanel() {
|
|
||||||
return myPanel;
|
|
||||||
}
|
|
||||||
|
|
||||||
public Spielfeld getSpielfeld() {
|
public Spielfeld getSpielfeld() {
|
||||||
return spielfeld;
|
return spielfeld;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue