H
Hoelzle
Gast
Hallo,
ich versuche gerade ein Oberfläche zu basteln und stehe jetzt auf dem Schlauch. Wie man dem Quellcode entnehmen kann, versuche ich mit Hilfe eines JInternalFrames und dem JDesktopPane innere Frames zu basteln, die innerhalb meines Hauptfensters erscheinen sollen.
Mein Problem ist jetzt, dass das JInternalFrame nicht angezeigt wird, wohl aber das JDesktopPane. Weiße ich jetzt z.B. dem "mainContainer" direkt ein JDesktopPane zu und arbeite damit, geht das wunderbar - das ist nur leider nicht das, was ich will.
Was mach ich falsch?
Ich hoffe, dass mir jemand helfen kann.
Nachfolgend der relevante Quelltext.
Viele Grüße
hoelzle
createFooter erzeugt ein JLabel, createMenu erzeugt eine JMenuBar mit dazugehörigen Items.
ich versuche gerade ein Oberfläche zu basteln und stehe jetzt auf dem Schlauch. Wie man dem Quellcode entnehmen kann, versuche ich mit Hilfe eines JInternalFrames und dem JDesktopPane innere Frames zu basteln, die innerhalb meines Hauptfensters erscheinen sollen.
Mein Problem ist jetzt, dass das JInternalFrame nicht angezeigt wird, wohl aber das JDesktopPane. Weiße ich jetzt z.B. dem "mainContainer" direkt ein JDesktopPane zu und arbeite damit, geht das wunderbar - das ist nur leider nicht das, was ich will.
Was mach ich falsch?
Ich hoffe, dass mir jemand helfen kann.
Nachfolgend der relevante Quelltext.
Viele Grüße
hoelzle
Java:
public class GraphicalUserInterface extends JFrame {
//Datenfelder weggelassen
public GraphicalUserInterface() {
super("Titel");
Container mainContainer = this.getContentPane();
mainContainer.setLayout(new BorderLayout());
mainContainer.add(createMenu(), BorderLayout.NORTH);
JDesktopPane desktop = new JDesktopPane();
InternalImageFrame f = new InternalImageFrame("Hallo", 300, 300);
desktop.add(f);
mainContainer.add(desktop, BorderLayout.CENTER);
mainContainer.add(createFooter(), BorderLayout.SOUTH);
this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
this.setSize(800, 600);
this.setVisible(true);
}
//Methoden weggelassen
}
createFooter erzeugt ein JLabel, createMenu erzeugt eine JMenuBar mit dazugehörigen Items.
Java:
package viewer;
import java.awt.Dimension;
import javax.swing.JInternalFrame;
/**
* TODO JavaDoc
*/
public class InternalImageFrame extends JInternalFrame {
private static final long serialVersionUID = 2614442422274954819L;
private Dimension preferredDimension;
public InternalImageFrame(String title,int sizeX, int sizeY) {
super(title, true, false, true, false);
preferredDimension = new Dimension(sizeX,sizeY);
this.setPreferredSize(preferredDimension);
this.setVisible(true);
}
@Override
public Dimension getPreferredSize()
{
return preferredDimension;
}
}