rendered paste body
import java.util.*;
import javax.swing.*;
import java.awt.Color;
import java.awt.event.*;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.util.*;
/**
* Write a description of class Gui here.
*
* author (Mark Schulze Spüntrup)
* version (22.03.08)
*/
public class Gui extends JFrame implements ActionListener
{
private Schiffeversenken spiel;
private JMenuBar menueleiste;
private JMenuItem starten,zuruecksetzen,bedienung,version,ende;
private JMenu dateimenue,hilfemenue;
private Color farbe1,farbe2,farbe3;
private ArrayList<JButton> buttonliste;
private JPanel panel;
public Gui()
{
super("Schiffeversenken");
spiel = new Schiffeversenken();
panel = new JPanel();
buttonliste = new ArrayList<JButton>();
farbenFestlegen();
menueZeileErzeugen();
spielfeldOberflaeche();
fensterEinstellungen();
buttonsVorbereiten();
show();
}
public void farbenFestlegen()
{
farbe1 = new Color(255,0,0);
farbe2 = new Color(160,220,240);
farbe3 = new Color(184,184,184);
}
public void fensterEinstellungen()
{
setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
setSize(400,400);
}
// ZUR ERKLÄRUNG VORAB: Die SCHLEIFE BEGINNT MIT 100 weil ich i unten noch zum zuweisen des Action Commands Nutze... Da aber bnereits 1-7 für die Menüeinträge drauf gehen
public void buttonsVorbereiten()
{
JButton knopf = null;
for(int i = 100; i < 200; i++)
{
knopf = new JButton();
knopf.addActionListener(this);
knopf.setActionCommand(""+i);
buttonliste.add(knopf);
}
for(JButton button : buttonliste)
{
panel.add(button);
}
}
public void spielfeldOberflaeche()
{
panel.setOpaque(true);
panel.setBackground(Color.yellow);
panel.setLayout(new GridLayout(10,10));
JButton knopf = null;
add(panel);
}
public void menueZeileErzeugen()
{
//Konfiguration der Menuezeile.
menueleiste = new JMenuBar();
menueleiste.setBackground(farbe3);
setJMenuBar(menueleiste);
//Konfiguration der verschiedenen Menues.
dateimenue = new JMenu("Datei");
dateimenue.setForeground(farbe1);
dateimenue.setBackground(farbe2);
hilfemenue = new JMenu("Hilfe");
hilfemenue.setForeground(farbe1);
hilfemenue.setBackground(farbe2);
//Konfiguration der verschiedenen Menueeinträge
starten = new JMenuItem("Starten");
starten.addActionListener(this);
starten.setActionCommand("1");
starten.setForeground(farbe1);
starten.setBackground(farbe2);
zuruecksetzen = new JMenuItem("Neustarten");
zuruecksetzen.addActionListener(this);
zuruecksetzen.setActionCommand("2");
zuruecksetzen.setForeground(farbe1);
zuruecksetzen.setBackground(farbe2);
ende = new JMenuItem("Beenden");
ende.addActionListener(this);
ende.setActionCommand("3");
ende.setForeground(farbe1);
ende.setBackground(farbe2);
bedienung = new JMenuItem("Bedienungsanleitung");
bedienung.addActionListener(this);
bedienung.setActionCommand("4");
bedienung.setForeground(farbe1);
bedienung.setBackground(farbe2);
version = new JMenuItem("Versionsdetails");
version.addActionListener(this);
version.setActionCommand("5");
version.setForeground(farbe1);
version.setBackground(farbe2);
hilfemenue.add(version);
hilfemenue.add(bedienung);
dateimenue.add(starten);
dateimenue.add(zuruecksetzen);
dateimenue.add(ende);
//Hinzufügen der Menues auf die Menuezeile.
menueleiste.add(dateimenue);
menueleiste.add(hilfemenue);
setSize(500,400);
}
public void actionPerformed(ActionEvent e)
{
String befehl = e.getActionCommand();
if(befehl.equals("1"))
{
spiel.starten();
}
if(befehl.equals("2"))
{
spiel.getSpielfeld().spielfeldResetten();
}
if(befehl.equals("3"))
{
setVisible(false);
dispose();
}
if(befehl.equals("101"))
{
System.out.println("Guuuuuut");
}
}
}