Hallo ihr Wissenden
ich habe nun endlich einen Frame erstellt, welcher ein GridBagLayout enthält. Nichts kompliziertes, er ist einfach gedrittelt worden.
Mein Problem ist nur, dass wenn ich die Klasse starte, ich links oben auf meinem Monitor einen winzigen ausschnitt meines Programms sehe und nur wenn ich diesen vergrößere, ich mein Werk betrachten kann. Ich hätte aber gern, dass es von Vornherein eine feste Größe hat.
Mein JFrame hat eine Größe aber die wird nicht akzeptiert. Meine Panels (in anderern Klassen) Haben auch Größen welche ignoriert werden.
Hier mal der Code
Hier eines der Panels
Danke schon mal im Vorraus und
einen schönen Abend noch!
ich habe nun endlich einen Frame erstellt, welcher ein GridBagLayout enthält. Nichts kompliziertes, er ist einfach gedrittelt worden.
Mein Problem ist nur, dass wenn ich die Klasse starte, ich links oben auf meinem Monitor einen winzigen ausschnitt meines Programms sehe und nur wenn ich diesen vergrößere, ich mein Werk betrachten kann. Ich hätte aber gern, dass es von Vornherein eine feste Größe hat.
Mein JFrame hat eine Größe aber die wird nicht akzeptiert. Meine Panels (in anderern Klassen) Haben auch Größen welche ignoriert werden.
Hier mal der Code
Java:
public class Gui extends JFrame {
private static final long serialVersionUID = 1L;
JFrame frame;
Pan1 pan1;
Pan2 pan2;
public void createLayout(Container cont){
GridBagLayout gbl = new GridBagLayout();
cont.setLayout(gbl);
GridBagConstraints gbC = new GridBagConstraints();
gbC.fill= GridBagConstraints.HORIZONTAL;
gbC.insets = new Insets(2,2,2,2);
gbC.gridx= 0;
gbC.gridy = 0;
gbC.gridheight = 1;
gbC.gridwidth = 2;
pan1 = new Pan1();
pan1.erzeugen();
gbl.setConstraints(pan1,gbC);
add(pan1);
gbC.gridx= 1;
gbC.gridy = 0;
gbC.gridheight = 2;
gbC.gridwidth = 1;
pan2 = new Pan2();
pan2.erzeuge();
gbl.setConstraints(pan2,gbC);
add(pan2);
}
public Gui(){
// Erzeugen eines JFrames mit Titelvergabe, Exitbutton, Größe
JFrame frame = new JFrame("New");
this.setTitle("WG-Orgnizer");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(1300, 900);
createLayout(frame.getContentPane());
this.pack();
this.setVisible(true);
}
}
Hier eines der Panels
Java:
public class Pan1 extends JPanel {
JPanel pan1;
int height = 900;
int length = 400;
public void erzeugen () {
this.setBackground(Color.red);
this.setSize(length, height);
this.add(new JLabel ("juhu"));
this.setVisible(true);
}
}
Danke schon mal im Vorraus und
einen schönen Abend noch!