Hallo Leute,
ich habe da ein kleines Problem bei dem ich zur Zeit nicht weiter weiß geschweige denn ein passendes Suchwort finde.
Ich schreibe zur Zeit ein Swing-Programm und möchte über die JMenuBar Panele austauschen.
Dafür habe ich eine Frame-Klasse die den Frame erzeugt, ein Panel erzeugt und die JMenuMenuBar erzeugt. In der Frame-Klasse ist eine innere Klasse, der MenuListener. Dieser soll dann die Panele austauschen. Bei Aufruf des Programms soll PanelEins angezeigt werden. Allerdings habe ich keine Ahnung wie ich die Panels austasuchen soll.
Es währe schön wenn ihr mir helfen könntet.
LG
ich habe da ein kleines Problem bei dem ich zur Zeit nicht weiter weiß geschweige denn ein passendes Suchwort finde.
Ich schreibe zur Zeit ein Swing-Programm und möchte über die JMenuBar Panele austauschen.
Dafür habe ich eine Frame-Klasse die den Frame erzeugt, ein Panel erzeugt und die JMenuMenuBar erzeugt. In der Frame-Klasse ist eine innere Klasse, der MenuListener. Dieser soll dann die Panele austauschen. Bei Aufruf des Programms soll PanelEins angezeigt werden. Allerdings habe ich keine Ahnung wie ich die Panels austasuchen soll.
Es währe schön wenn ihr mir helfen könntet.
LG
Java:
package guiFrame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import startPage.StartPage;
import mainMenue.Menu;
public class GuiFrame extends JFrame{
private static final long serialVersionUID = 1L;
private String mainPageTitle;
// Panel 1
private PanelEins panelEins;
// Panel 2
private PanelZwei panelZwei;
public GuiFrame(){
mainPageTitle = "Meine GUI";
// Frame
this.setTitle(mainPageTitle);
this.setDefaultCloseOperation(GuiFrame.EXIT_ON_CLOSE);
this.setExtendedState(JFrame.MAXIMIZED_BOTH);
this.setJMenuBar(new Menu(new MenuListener()));
this.setLocationRelativeTo(null);
// Panel
panelEins= new PanelEins();
panelZwei= new PanelZwei();
this.add(panelEins);
this.setVisible(true);
}
public class MenuListener implements ActionListener {
@Override
public void actionPerformed(ActionEvent l) {
String command = l.getActionCommand();
if (command.equals("Beenden")) {
System.exit(NORMAL);
}
if (command.equals("Panel2")) {
// TODO panelEins ausblenden panelZwei einblenden
[.. ab hier spekulativ
panelZwei = new PanelZwei();
Der Frame.remove(panelEins);
Der Frame.add(panelZwei);
repaint();
...]
}
if (command.equals("Panel1")) {
// TODO panelZwei ausblenden panelEins einblenden
[.. ab hier spekulativ
panelEins = new PanelEins();
Der Frame.remove(panelZwei);
Der Frame.add(panelEins);
repaint();
...]
}
}
}
public static void main(String[] args) {
new GuiFrame();
}
}
Zuletzt bearbeitet: