Hallo Leute,
ich habe ja lange nichts mehr von mir hören lassen, aber jetzt benötige ich noch mal eure Hilfe.
Ich habe folgendes Problem und zwar habe ich ein JFrame, JMenu und mehrere Klassen, nun möchte ich wenn ich in dem JMenu etwas anklicke, dass dann das ContentPane einer anderen Klasse aufgerufen wird.
In meiner Methode ActionPerformed kann ich auch durch klicken dieses Eintrages ein neues fenster erzeugen, aber ich bekomme es einfach nicht hin, den Inhalt aus diesem fenster nur ganz allein in diesem Frame wieder zu geben.
Ich hoffe ihr könnt mir helfen, denn ich habe schon auf einigen Seiten gegoogelt, aber nichts gefunden, was mir helfen könnte.
Gruß Jens
ich habe ja lange nichts mehr von mir hören lassen, aber jetzt benötige ich noch mal eure Hilfe.
Ich habe folgendes Problem und zwar habe ich ein JFrame, JMenu und mehrere Klassen, nun möchte ich wenn ich in dem JMenu etwas anklicke, dass dann das ContentPane einer anderen Klasse aufgerufen wird.
In meiner Methode ActionPerformed kann ich auch durch klicken dieses Eintrages ein neues fenster erzeugen, aber ich bekomme es einfach nicht hin, den Inhalt aus diesem fenster nur ganz allein in diesem Frame wieder zu geben.
Ich hoffe ihr könnt mir helfen, denn ich habe schon auf einigen Seiten gegoogelt, aber nichts gefunden, was mir helfen könnte.
Gruß Jens
Code:
package gui;
public class GuiStart
{
static GuiJFrame fenster;
public static void main (String [] args)
{
fenster = new GuiJFrame();
fenster.setVisible(true);
}
}
Code:
package gui;
import java.awt.Container;
import java.awt.GridLayout;
import javax.swing.*;
public class GuiJFrame extends JFrame
{
private Container cp;
private JMenuBar menubar;
private GuiJMenu menu;
public GuiJFrame()
{
super("dfsdf");
this.setSize(200, 200);
cp = getContentPane();
cp.setLayout(new GridLayout(3, 1));
menu = new GuiJMenu();
menubar = new JMenuBar();
setJMenuBar(menubar);
menubar.add(menu.menuFeldA);
menubar.add(menu.menuFeldB);
}
}
Code:
package gui;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JMenu;
import javax.swing.JMenuItem;
public class GuiJMenu extends GuiJFrame implements ActionListener
{
public JMenu menuFeldA;
public JMenu menuFeldB;
private JMenuItem menuFeldACItem;
private JMenuItem menuFeldAAItem;
private JMenuItem menuFeldABItem;
private JMenuItem menuFeldBAItem;
private JMenuItem menuFeldBBItem;
private JMenuItem menuFeldBCItem;
private abcDe fenster;
private GuiJFrame guiJFrame;
public GuiJMenu()
{
menuFeldA = new JMenu("FeldA");
menuFeldB = new JMenu("FeldB");
menuFeldAAItem = new JMenuItem("FeldAA");
menuFeldAAItem.addActionListener(this);
menuFeldA.add(menuFeldAAItem);
menuFeldABItem = new JMenuItem("FeldAB");
menuFeldABItem.addActionListener(this);
menuFeldA.add(menuFeldABItem);
menuFeldACItem = new JMenuItem("FeldAC");
menuFeldACItem.addActionListener(this);
menuFeldA.add(menuFeldACItem);
menuFeldBAItem = new JMenuItem("FeldBB");
menuFeldBAItem.addActionListener(this);
menuFeldB.add(menuFeldBAItem);
menuFeldBBItem = new JMenuItem("FeldBB");
menuFeldBBItem.addActionListener(this);
menuFeldB.add(menuFeldBBItem);
menuFeldBCItem = new JMenuItem("FeldBC");
menuFeldBCItem.addActionListener(this);
menuFeldB.add(menuFeldBCItem);
}
public void actionPerformed(ActionEvent ae) {
Object quelle = ae.getSource();
if (quelle == menuFeldAAItem)
{
System.out.println("dsgjfsdjhg");
fenster = new abcDe();
guiJFrame.getContentPane();
guiJFrame.setContentPane(fenster.cp);
}
if (quelle == menuFeldACItem)
{
System.exit(0);
}
}
}
Code:
package gui;
import java.awt.Container;
import java.awt.GridLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
public class abcDe extends JFrame
{
public Container cp;
public abcDe()
{
super("lalala");
this.setSize(200, 200);
cp = getContentPane();
cp.add(new JButton("dfdsf"));
cp.setLayout(new GridLayout(3, 1));
}
}