Sers ich habe mir mal ne kleine oberfläche mit Swing gebastelt aber ich komme nicht dahinter wie ich wenn ich auf dnen menü punkt neu gehe dafür sorge das anstadt dem wilkommens text ein formular erscheint kann da vieleicht einer mal nen beispiel progen oder vieleicht hat ja einer ein hier mal meine Sourcen.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class Listing3608 extends JFrame
implements ActionListener
{
public Listing3608()
{
super("Swing-Menütest");
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent event) {
System.out.println("Programm wird geschlossen...");
dispose();
System.exit(0);
}
}
);
Container cp = getContentPane();
cp.setLayout(new GridLayout(5,2));
JLabel label;
label = new JLabel("Test");
cp.add(label);
JMenuBar menubar = new JMenuBar();
menubar.add(createFileMenu());
setJMenuBar(menubar);
}
//Private Methoden
private JMenu createFileMenu()
{
JMenu ret = new JMenu("Datei");
ret.setMnemonic('D');
JMenuItem mi;
//Neu
mi = new JMenuItem("Neu", 'n');
setCtrlAccelerator(mi, 'N');
mi.addActionListener(this);
ret.add(mi);
//Öffnen
mi = new JMenuItem("Öffnen", 'f');
setCtrlAccelerator(mi, 'O');
mi.addActionListener(this);
ret.add(mi);
//Speichern
mi = new JMenuItem("Speichern", 'p');
setCtrlAccelerator(mi, 'S');
mi.addActionListener(this);
ret.add(mi);
//Separator
ret.addSeparator();
//Beenden
mi = new JMenuItem("Beenden", 'e');
mi.addActionListener(this);
ret.add(mi);
return ret;
}
private void setCtrlAccelerator(JMenuItem mi, char acc)
{
KeyStroke ks = KeyStroke.getKeyStroke(
acc, Event.CTRL_MASK
);
mi.setAccelerator(ks);
}
public void actionPerformed(ActionEvent event)
{
String cmd = event.getActionCommand();
if (cmd.equals("Beenden"))
{
System.out.println("Programm wird geschlossen...");
dispose();
System.exit(0);
}
else if (cmd.equals("Neu"))
{
System.out.println("Neu");
}
else if (cmd.equals("Öffnen"))
{
System.out.println("Oeffnen");
}
else if (cmd.equals("Speichern"))
{
System.out.println("Speichern");
}
}
public static void main(String[] args)
{
Listing3608 frame = new Listing3608();
frame.setLocation(100, 100);
frame.setSize(300, 200);
frame.setVisible(true);
}
}