[...]
// GUI-Components
Container c;
Field field;
JScrollPane scr;
// Menueleiste
JMenuBar menu=new JMenuBar();
// Spielmenue
JMenu jMenuGame=new JMenu("Spiel");
JMenuItem mNew=new JMenuItem("Neu");
JMenuItem mSave=new JMenuItem("Spielstand Speichern");
JMenuItem mLoad=new JMenuItem("Spiel laden");
JMenuItem mSolve = new JMenuItem("Lösung anzeigen");
JMenuItem mControl = new JMenuItem("Lösung kontrollieren");
JMenuItem mExit=new JMenuItem("Beenden");
// Ansichtmenue
JMenu jMenuView=new JMenu("Ansicht");
JMenuItem mIn=new JMenuItem("Zoom in");
JMenuItem mOut=new JMenuItem("Zoom out");
// Hilfe-Menue
JMenu jMenuHelp=new JMenu("Hilfe");
JMenuItem jMenuHelpText=new JMenuItem("Hilfetext");
JMenuItem jMenuHelpAbout=new JMenuItem("Impressum");
public Gui()
{
// Interface-Stil
try
{
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
}
catch (Exception e)
{
e.printStackTrace();
}
// GUI-Layout
final Field field = new Field();
field.setPreferredSize(new Dimension(size, size));
field.setSize(new Dimension(size,size));
scr = new JScrollPane(field);
setPreferredSize(new Dimension(400,400));
add(scr, BorderLayout.CENTER);
setTitle("Nonogramme - by Marco Schuermann (c)");
setSize(550,600);
// "Spiel" - Menue
jMenuGame.setMnemonic('S');
jMenuGame.add(mNew);
jMenuGame.addSeparator();
jMenuGame.add(mSave);
jMenuGame.add(mLoad);
jMenuGame.addSeparator();
jMenuGame.add(mSolve);
jMenuGame.add(mControl);
jMenuGame.addSeparator();
jMenuGame.add(mExit);
// Funktion mit Tastenkombination STRG+S erreichen
mSave.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S, InputEvent.CTRL_MASK));
// "Ansicht" - Menue
jMenuView.setMnemonic('A');
jMenuView.add(mIn);
jMenuView.add(mOut);
// ZoomIn mit STRG+PLUS und ZoomOut mit STRG+MINUS erreichen
mIn.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_PLUS, InputEvent.CTRL_MASK));
mOut.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_MINUS, InputEvent.CTRL_MASK));
// "Hilfe"
jMenuHelp.setMnemonic('H');//
jMenuHelp.add(jMenuHelpAbout);
jMenuHelp.addSeparator();
jMenuHelp.add(jMenuHelpText);
// Obere Reiter "Datei", "Ansicht", "Hilfe"
menu.add(jMenuGame);
menu.add(jMenuView);
menu.add(jMenuHelp);
setJMenuBar(menu);
jMenuGame.setFont(new Font("PLAIN",Font.PLAIN,14));
jMenuView.setFont(new Font("PLAIN",Font.PLAIN,14));
jMenuHelp.setFont(new Font("PLAIN",Font.PLAIN,14));
jMenuGame.setBackground(Color.lightGray);
jMenuView.setBackground(Color.lightGray);
jMenuHelp.setBackground(Color.lightGray);
menu.setBackground(Color.lightGray);