public class Hauptprog{
/**
* @param args
*/
public static void main(String[] args) {
Menufenster Fenster = new Menufenster(); <-- Objekt Erzeugung
Fenster.pack();
Fenster.setSize(1000,700);
Fenster.setVisible(true);
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Menufenster
extends JFrame
{
/**
*
*/
private static final long serialVersionUID = -5662524236639740802L;
private JMenuBar Menubar;
private JMenu menu1,menu2,menu3,menu4;
private JMenuItem item_load,item_save,item_exit,item_edit;
/**
* @param args
*/
public Menufenster(){
super("mein prog");
addWindowListener(new WindowClosingAdapter(true));
menubar();
}
public void menubar(){
ActionListener listener = new ActionAdapter(this);
Menubar = new JMenuBar();
menu1 = new JMenu("Datei");
menu2 = new JMenu("Bearbeiten");
menu3 = new JMenu("Ansicht");
menu4 = new JMenu("Hilfe");
item_load = new JMenuItem("Datei laden..." ,'l');
setCtrlAccelerator(item_load, 'L');
item_save = new JMenuItem("Datei speichern...", 's');
setCtrlAccelerator(item_save, 'S');
item_exit = new JMenuItem("Beenden", 'B');
setCtrlAccelerator(item_exit, 'B');
item_edit = new JMenuItem("Audiodatei",'A');
setCtrlAccelerator(item_edit, 'A');
menu1.setMnemonic('D');
menu2.setMnemonic('B');
menu3.setMnemonic('A');
menu4.setMnemonic('H');
menu1.add(item_load);
menu1.add(item_save);
menu1.addSeparator();
menu1.add(item_exit);
Menubar.add(menu1);
menu2.add(item_edit);
Menubar.add(menu2);
Menubar.add(menu3);
Menubar.add(menu4);
Menubar.setBorder(BorderFactory.createEtchedBorder());
getContentPane().add(Menubar, BorderLayout.NORTH);
item_load.addActionListener(listener);
item_exit.addActionListener(listener);
item_save.addActionListener(listener);
item_edit.addActionListener(listener);
}
hier mal der komplette Quelltext zur ersten Klasse..das Objekt Fenster was im Hauptprog erstellt wird, wird ja meines erachtens ja von JFrame abgleitet.Im Detail passiert dies in der Klasse Menufenster...
Das funktioniert ja auch alles soweit.Die Frage ist halt nur ob das so ok ist, wenn ich global auf dieses erzeugte JFrame zugreifen will ? Bzw. was müsste ich vielleicht anders machen ?