Hallo Freunde der nächtlichen Programmierung,
ich bin ja mal alles andere als nen großer Java-Fan, muss aber dennoch ne kleine Aufgabe bewältigen und ne Gui für ein Programm zaubern. Nun hab ich nach einigen Tutorials endlich das JMenu fertig.
Die Main-Klasse sieht dementsprechend wie folgt aus:
Nun dacht ich mir, jetzt kommt der Hauptteil des Fensters in eine weitere Klasse ContentLayout, um das nicht auch noch in die Klasse zu stecken, wo ich bereits das Menu drin hab, damit ich noch ein wenig durchblicke. Aber ich weiß echt nicht, wie ich nun das LayoutModel (z.B. Borderlayout) in die neue Klasse stecke und das dann in der Main-Klasse mit aufrufe.
Alle bisherigen Versuche sind fehlgeschlagen und ich hab maximal neben dem Menu noch ein zweites Fenster geöffnet mit dem BorderLayout
ich bin ja mal alles andere als nen großer Java-Fan, muss aber dennoch ne kleine Aufgabe bewältigen und ne Gui für ein Programm zaubern. Nun hab ich nach einigen Tutorials endlich das JMenu fertig.
Java:
package gui;
import javax.swing.*;
import java.awt.event.*;
public class Layout extends JFrame{
/**
*
*/
private static final long serialVersionUID = 1L;
public Layout()
{
super("Computergrafik - ImageMap");
////////////DATEI///////////////////////////////////
JMenu datei = new JMenu("Datei");
JMenuItem openItem = new JMenuItem("Öffnen");
openItem.setMnemonic('o'); //Hotkey o = oeffnen
datei.add(openItem);
JMenuItem exitItem = new JMenuItem("Beenden");
exitItem.setMnemonic('x');
datei.add(exitItem); //Hotkey x = beenden
//adding action listener to menu items
openItem.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
//GIB Gummi, Junge!
}
}
);
exitItem.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
);
////////////ZEICHNEN///////////////////////////////////
JMenu zeichnen = new JMenu("Zeichnen");
JMenuItem kreisItem = new JMenuItem("Kreis");
kreisItem.setMnemonic('k');
zeichnen.add(kreisItem);
JMenuItem rechtEckItem = new JMenuItem("Rechteck");
rechtEckItem.setMnemonic('r');
zeichnen.add(rechtEckItem);
JMenuItem polygonItem = new JMenuItem("Polygon");
polygonItem.setMnemonic('p');
zeichnen.add(polygonItem);
//adding action listener to menu items
kreisItem.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
//......
}
}
);
rechtEckItem.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
//......
}
}
);
polygonItem.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
//......
}
}
);
////////////Info///////////////////////////////////
JMenu info = new JMenu("Info");
info.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e)
{
//......
}
}
);
////////////ENDE///////////////////////////////////
JMenuBar bar = new JMenuBar();
setJMenuBar(bar);
bar.add(datei);
bar.add(zeichnen);
bar.add(info);
getContentPane();
setSize(600, 500);
setLocation(600, 200);
setVisible(true);
}
}
Die Main-Klasse sieht dementsprechend wie folgt aus:
Java:
package gui;
import javax.swing.JFrame;
public class Main {
public static void main(String[] args)
{
Layout app = new Layout();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//ContentLayout g = new ContentLayout();
}
}
Nun dacht ich mir, jetzt kommt der Hauptteil des Fensters in eine weitere Klasse ContentLayout, um das nicht auch noch in die Klasse zu stecken, wo ich bereits das Menu drin hab, damit ich noch ein wenig durchblicke. Aber ich weiß echt nicht, wie ich nun das LayoutModel (z.B. Borderlayout) in die neue Klasse stecke und das dann in der Main-Klasse mit aufrufe.
Alle bisherigen Versuche sind fehlgeschlagen und ich hab maximal neben dem Menu noch ein zweites Fenster geöffnet mit dem BorderLayout