H
Halma
Gast
Hallo,
wir haben ein Problem mit unserem Menu. Die Menüleiste an sich mit den JMenüs tauchen auf, die Anzeige unserer Item verschwindet leider hinter dem darunterliegenden Panel.
Wir programmieren gerade ein Halmaspiel mit Borderlayout.
Hat vielleicht jemand schon ein ähnliches Problem gelöst oder eine Idee wie wir es lösen könnten?
Hier unser Quellcode
wir haben ein Problem mit unserem Menu. Die Menüleiste an sich mit den JMenüs tauchen auf, die Anzeige unserer Item verschwindet leider hinter dem darunterliegenden Panel.
Wir programmieren gerade ein Halmaspiel mit Borderlayout.
Hat vielleicht jemand schon ein ähnliches Problem gelöst oder eine Idee wie wir es lösen könnten?
Hier unser Quellcode
Code:
public class Spielfenster extends JFrame implements ActionListener, MouseListener {
// leere Implementierungen weil MouseListener Interface ist
public void mouseReleased(MouseEvent e) {}
public void mouseClicked(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
// leere Implementierungen weil MouseMotionListener Interface ist
boolean _steinMarkiert = false;
Startdialog _start = Start._start;
Punkt mp = new Punkt();
Stein_Array container = new Stein_Array();
Graphics g;
Stein _marStein;
String zeila;
public Spielfenster()
{
JFrame spielfenster = new JFrame ("HALMA");
spielfenster.setResizable(false);
this.addMouseListener(this);
Container contentPane = spielfenster.getContentPane();
// Menue Spiel
JMenu spiel = new JMenu ("Spiel");
//Menuitems
JMenuItem neuesSpiel = new JMenuItem ("Neues Spiel");
neuesSpiel.addActionListener(this);
JMenuItem ende = new JMenuItem ("Spiel beenden");
ende.addActionListener(this);
spiel.add(neuesSpiel);
spiel.add(ende);
// Menue Hilfe
JMenu hilfe = new JMenu ("Hilfe");
// Menuitems
JMenuItem regeln = new JMenuItem ("Spielanleitung");
regeln.addActionListener(this);
JMenuItem probleme = new JMenuItem ("Probleme?");
probleme.addActionListener(this);
hilfe.add(regeln);
hilfe.add(probleme);
//Menueleiste erstellen, Menue hinzufügen
JMenuBar menuleiste = new JMenuBar();
menuleiste.add (spiel);
menuleiste.add (hilfe);
menuleiste.setBackground(new Color (167, 200, 55));
spielfenster.setJMenuBar(menuleiste);
JLabel label = new JLabel ("Spieler");
JLabel labelA = new JLabel ("Anzahl");
Icon onni = new ImageIcon ("figur_blaub25.png");
JLabel label_Onni = new JLabel(onni);
JButton buttonP = new JButton ("Spielfiguren setzen");
JButton buttonB = new JButton ("Zug beenden");
JButton buttonA = new JButton ("Spielanleitung");
buttonA.addActionListener(this);
buttonP.addActionListener(this);
buttonB.addActionListener(this);
buttonA.setBackground(new Color( 167, 200, 55));
buttonB.setBackground(new Color( 236, 19, 40));
buttonP.setBackground(new Color (174, 255, 255));
JLabel labelS1 = new JLabel(_start._name1);
JLabel labelS2 = new JLabel (_start._name2);
JLabel labelS3 = new JLabel (_start._name3);
labelS1.setForeground(_start._farbe1);
labelS2.setForeground(_start._farbe2);
labelS3.setForeground(_start._farbe3);
JTextField feld1 = new JTextField (5);
JTextField feld2 = new JTextField (5);
//Nordpanel
Panel panel1_1 = new Panel ();
panel1_1.setLayout (new FlowLayout (FlowLayout.LEFT,20, 20));
panel1_1.add (label_Onni);
panel1_1.add (labelA);
Panel panel1_2 = new Panel ();
panel1_2.setLayout (new FlowLayout (FlowLayout.RIGHT,20, 20));
panel1_2.add (buttonA);
Panel panel1_3 = new Panel ();
panel1_3.setLayout (new FlowLayout (FlowLayout.RIGHT,20, 20));
panel1_3.add (buttonP);
Panel panel1 = new Panel();
panel1.setLayout(new GridLayout(1,2));
panel1.add(panel1_1);
panel1.add(panel1_3);
panel1.add(panel1_2);
panel1.setBackground(new Color( 253, 232, 83));
//Südpanel
Panel panel3_1 = new Panel();
panel3_1.setLayout(new FlowLayout (FlowLayout.LEFT,20,20));
panel3_1.add(labelS1);
panel3_1.add(labelS2);
panel3_1.add(labelS3);
Panel panel3_2 = new Panel();
panel3_2.setLayout(new FlowLayout (FlowLayout.RIGHT));
panel3_2.add( buttonB);
Panel panel3 = new Panel();
panel3.setLayout(new GridLayout(1,2));
panel3.add(panel3_1);
panel3.add(panel3_2);
panel3.setBackground(new Color( 253, 232, 83));
//Westpanel
Panel panel2 = new Panel();
panel2.setLayout(new GridLayout(1,1));
panel2.add (feld1);
feld1.setVisible(false);
panel2.setBackground(new Color( 253, 232, 83));
//Ostpanel
Panel panel4 = new Panel();
panel4.setLayout(new GridLayout(1,1));
panel4.add (feld2);
feld2.setVisible(false);
panel4.setBackground(new Color( 253, 232, 83));
//Center
Panel panel5 = new Panel ();
Icon bild = new ImageIcon ("Halmania5c.png");
JLabel spielbild = new JLabel (bild, JLabel.CENTER);
spielbild.setSize(100,100);
panel5.add(spielbild);
panel5.setBackground(new Color( 253, 232, 83));
contentPane.setLayout (new BorderLayout());
contentPane.add ("North", panel1);
contentPane.add ("South", panel3);
contentPane.add ("West", panel2);
contentPane.add ("East", panel4);
contentPane.add ("Center", panel5);
spielfenster.setSize (820,740);
spielfenster.setBackground (new Color( 253, 232, 83));
spielfenster.setVisible (true);
g = spielbild.getGraphics();
spielbild.addMouseListener(this);
}