public class Main {
private VerwaltungTCP verwaltungTCP;
private VerwArtikel modVerwArtikel;
private ContMenue contMenue;
private JFrame mainFrame;
private MenueLinks pnlMenueLinks;
private Grundbild pnlGrundbild;
private MenueOben pnlMenueOben;
private JScrollPane scrCardLayout;
/**
* Konstruktor
*/
public Main() {
// Initialisierung Models
modVerwArtikel = new VerwArtikel();
contMenue = new ContMenue(modVerwArtikel);
verwaltungTCP = new VerwaltungTCP(modVerwArtikel);
mainFrame = new JFrame("Messplatz");
mainFrame.getContentPane().setLayout(new BorderLayout(5, 5));
mainFrame.addWindowListener(new FensterVerwaltung(mainFrame));
pnlMenueLinks = new MenueLinks(modVerwArtikel, contMenue);
pnlMenueOben = new MenueOben(modVerwArtikel, contMenue);
pnlGrundbild = new Grundbild(modVerwArtikel, contMenue);
scrCardLayout = new JScrollPane(pnlGrundbild);
scrCardLayout.setPreferredSize(new Dimension(1024, 800));
mainFrame.add(BorderLayout.WEST, pnlMenueLinks);
mainFrame.add(BorderLayout.CENTER, scrCardLayout);
mainFrame.add(BorderLayout.NORTH, pnlMenueOben);
SwingUtilities.invokeLater(new Runnable() {
public void run() {
mainFrame.pack();
mainFrame.setLocationRelativeTo(null); // in der mitte
mainFrame.setVisible(true);
}
});
}
// main
public static void main(String[] args) {
new Main();
}
}
public class Grundbild extends JPanel implements Observer {
private VerwArtikel verwArtikel;
private ContMenue contMenue;
private JPanel pnlCardLayout;
private JPanel pnlStartseite;
private JPanel pnlResultate;
private JPanel pnlParameter;
private JPanel pnlToleranzen;
private JPanel pnlHandb;
/**
* Konstruktor
*/
public Grundbild(VerwArtikel verwArtikel, ContMenue contMenue) {
super();
this.verwArtikel = verwArtikel;
this.contMenue = contMenue;
verwArtikel.addObserver(this);
setBorder(BorderFactory.createTitledBorder("Hauptfenster"));
initWidgets();
addWidgets();
}
/**
* Widgets initialisieren
*/
private void initWidgets() {
pnlStartseite = new Startseite(verwArtikel);
pnlResultate = new Resultate(verwArtikel);
pnlParameter = new Parameter(verwArtikel, contMenue);
pnlToleranzen = new Toleranzen(verwArtikel, contMenue);
pnlHandb = new Handbetrieb(verwArtikel, contMenue);
pnlCardLayout = new JPanel(new CardLayout());
}
/**
* Widgets adden
*/
private void addWidgets() {
pnlCardLayout.add(pnlStartseite, "Startseite");
pnlCardLayout.add(pnlResultate, "Resultate");
pnlCardLayout.add(pnlParameter, "Parameter");
pnlCardLayout.add(pnlToleranzen, "Toleranzen");
pnlCardLayout.add(pnlHandb, "Handbetrieb");
add(pnlCardLayout);
}
/**
* Aenderungen Empfangen
*/
@Override
public void update(Observable o, Object arg) {
if (verwArtikel == o) {
if (arg.equals("fensterChange")) {
// Panel ändern
CardLayout cl = (CardLayout) pnlCardLayout.getLayout();
cl.show(pnlCardLayout, verwArtikel.getAktivesFenster());
}
}
}
}
mainFrame.add(BorderLayout.WEST, pnlMenueLinks);
mainFrame.add(BorderLayout.CENTER, scrCardLayout);
mainFrame.add(BorderLayout.NORTH, pnlMenueOben);
mainFrame.add(pnlMenueLinks, BorderLayout.WEST);
mainFrame.add(scrCardLayout, BorderLayout.CENTER);
mainFrame.add(pnlMenueOben, BorderLayout.NORTH);
Mach mal aus:
Java:mainFrame.add(BorderLayout.WEST, pnlMenueLinks); mainFrame.add(BorderLayout.CENTER, scrCardLayout); mainFrame.add(BorderLayout.NORTH, pnlMenueOben);
bitte das:
Java:mainFrame.add(pnlMenueLinks, BorderLayout.WEST); mainFrame.add(scrCardLayout, BorderLayout.CENTER); mainFrame.add(pnlMenueOben, BorderLayout.NORTH);
mainFrame.add(scrCardLayout, BorderLayout.CENTER);
mainFrame.add(scrCardLayout);