Menüleiste - Hintergrundwechsel

Heinzi1991

Erfahrenes Mitglied
Hallo liebe Community,

ich hab ein Problem bei einem Programm von mir.

Auf dem Bild sieht, man den Hauptscreen, und auf der oberen Seite ein ein JMenuBar mit Unterkategorien
und ich will wenn ich auf eine Unterkategorie wie zum Beispiel "New Game" klicke, dann soll ein neuer Hintergrund auf diesem Fenster erscheinen, aber ich hab wirklich keine Ahnung wie ich das anstellen soll.

Java:
package oadgui;

import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;

import oad.User;
import oad.session;

import javax.swing.SwingConstants;

public class HomeWindow extends Window implements ActionListener {
    //elements
   
    //panel
    private JPanel master_panel;
   
    //labels
    private JLabel l_welcome;

   
    //buttons
   
   
    //textfields
   
   
    //menu
    private JMenuBar menu;
   
    private JMenu home;
    private JMenu games;
    private JMenu settings;
    private JMenu help;
   
    private JMenuItem menu_games_newgame;
    private JMenuItem menu_games_editor;
    private JMenuItem menu_games_topgames;
    private JMenuItem menu_games_rankings;

   
    private JMenuItem menu_settings_usersettings;
   
    private JMenuItem menu_help_contact;
    private JMenuItem menu_help_tutorial;
    private JMenuItem menu_help_forum;
   
   
    //vars
    session current_session;
   
    public HomeWindow(session input_session){
        //setup vars
        this.current_session = input_session;
       
        //setup frame
        init();
        this.setName("Home Screen");
        this.setSize(800, 600);
        this.initSize();
       
        //init elements
       
        this.l_welcome = new JLabel("Willkommen User");
       
        this.master_panel = new JPanel(new BorderLayout());
       
        this.menu = new JMenuBar();
       
        this.home = new JMenu("Home");
        this.games = new JMenu("Games");
        this.settings = new JMenu("Settings");
        this.help = new JMenu("Help");
       
        this.menu_games_newgame = new JMenuItem("New Game");
        menu_games_newgame.addActionListener(this);
       
        this.menu_games_editor = new JMenuItem("Editor");
        this.menu_games_topgames = new JMenuItem("Top Games");
        this.menu_games_rankings = new JMenuItem("Rankings");
       
        this.menu_settings_usersettings = new JMenuItem("User Settings");
       
        this.menu_help_contact = new JMenuItem("Contact");
        this.menu_help_tutorial = new JMenuItem("Tutorials");
        this.menu_help_forum = new JMenuItem("Forum");
           
               
        //add elements
       
        this.games.add(this.menu_games_newgame);
        this.games.add(this.menu_games_editor);
        this.games.add(this.menu_games_topgames);
        this.games.add(this.menu_games_rankings);
       
        this.settings.add(this.menu_settings_usersettings);
       
        this.help.add(this.menu_help_contact);
        this.help.add(this.menu_help_tutorial);
        this.help.add(this.menu_help_forum);
       
        this.menu.add(this.home);
        this.menu.add(this.games);
        this.menu.add(this.settings);
        this.menu.add(this.help);
       
        this.master_panel.add(this.menu, BorderLayout.NORTH);
           
       
        this.window.getContentPane().add(this.master_panel);

       

       
        //this.initListeners();
       
    }
   
    /*private void initListeners()
    {
   
    }*/

    @Override
    public void actionPerformed(ActionEvent e)
    {
        if (e.getSource() == menu_games_newgame)
        {
            System.out.println("new game wurde angeklickt");
        }
       
    }

       
}

Hoffe mir kann jemand helfen, den ich bin eigentlich noch ganz neu in dieser Programmiersprache. :)
 

Anhänge

  • Bildschirmfoto 2014-11-29 um 20.23.41.png
    Bildschirmfoto 2014-11-29 um 20.23.41.png
    32,4 KB · Aufrufe: 8
Zurück