Code:
import javax.swing.*;
import java.awt.event.*;
public class TestGUI {
public static void main(String args[]) {
Cordinator c=new Cordinator();
Modul m=new Modul(c);
c.showFrame();
}
}
interface GUIModul {
}
class Modul implements GUIModul {
private JMenu menu;
private Cordinator cordinator;
private String name="Modul 1";
public Modul(Cordinator c) {
cordinator=c;
menu=new JMenu(name);
JMenuItem operation1=new JMenuItem("Operation1");
operation1.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
operation1Performed();
}
}
);
menu.add(operation1);
JMenuItem operation2=new JMenuItem("Operation2");
operation2.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
operation2Performed();
}
}
);
menu.add(operation2);
c.addMenu(menu);
}
public void operation1Performed() {
System.out.println("operation1");
JPanel panel=new JPanel();
JLabel label=new JLabel("Operation1 performed");
panel.add(label);
//cordinator.setPanel(panel);
cordinator.getFrame().getContentPane().add(panel);
cordinator.getFrame().repaint();
}
public void operation2Performed() {
System.out.println("operation2");
JPanel panel=new JPanel();
JLabel label=new JLabel("Operation2 performed");
panel.add(label);
//cordinator.setPanel(panel);
cordinator.getFrame().getContentPane().add(panel);
cordinator.getFrame().repaint();
}
}
class Cordinator {
private JFrame frame;
private JMenuBar menuBar;
private JPanel panel;
public Cordinator() {
frame=new JFrame("TestMenu");
panel=new JPanel();
menuBar=new JMenuBar();
frame.setJMenuBar(menuBar);
frame.getContentPane().add(getDefaultPanel());
}
public JPanel getPanel() {
return panel;
}
public void setPanel(JPanel p) {
panel=p;
}
public JPanel getDefaultPanel() {
JLabel label=new JLabel("Neki tekst");
getPanel().add(label);
return getPanel();
}
public JFrame getFrame() {
return frame;
}
public void showFrame() {
frame.setSize(400, 300);
frame.setVisible(true);
}
public void addMenu(JMenu menu) {
menuBar.add(menu);
}
}
import javax.swing.*;
import java.awt.event.*;
public class TestGUI {
public static void main(String args[]) {
Cordinator c=new Cordinator();
Modul m=new Modul(c);
c.showFrame();
}
}
interface GUIModul {
}
class Modul implements GUIModul {
private JMenu menu;
private Cordinator cordinator;
private String name="Modul 1";
public Modul(Cordinator c) {
cordinator=c;
menu=new JMenu(name);
JMenuItem operation1=new JMenuItem("Operation1");
operation1.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
operation1Performed();
}
}
);
menu.add(operation1);
JMenuItem operation2=new JMenuItem("Operation2");
operation2.addActionListener(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
operation2Performed();
}
}
);
menu.add(operation2);
c.addMenu(menu);
}
public void operation1Performed() {
System.out.println("operation1");
JPanel panel=new JPanel();
JLabel label=new JLabel("Operation1 performed");
panel.add(label);
//cordinator.setPanel(panel);
cordinator.getFrame().getContentPane().add(panel);
cordinator.getFrame().repaint();
}
public void operation2Performed() {
System.out.println("operation2");
JPanel panel=new JPanel();
JLabel label=new JLabel("Operation2 performed");
panel.add(label);
//cordinator.setPanel(panel);
cordinator.getFrame().getContentPane().add(panel);
cordinator.getFrame().repaint();
}
}
class Cordinator {
private JFrame frame;
private JMenuBar menuBar;
private JPanel panel;
public Cordinator() {
frame=new JFrame("TestMenu");
panel=new JPanel();
menuBar=new JMenuBar();
frame.setJMenuBar(menuBar);
frame.getContentPane().add(getDefaultPanel());
}
public JPanel getPanel() {
return panel;
}
public void setPanel(JPanel p) {
panel=p;
}
public JPanel getDefaultPanel() {
JLabel label=new JLabel("Neki tekst");
getPanel().add(label);
return getPanel();
}
public JFrame getFrame() {
return frame;
}
public void showFrame() {
frame.setSize(400, 300);
frame.setVisible(true);
}
public void addMenu(JMenu menu) {
menuBar.add(menu);
}
}
Owl