setSize mit GridBagLayout

Layna

Erfahrenes Mitglied
Hallo :)
Ok, hoffentlich meine letzte Frage zu dieser Speziellen Oberfläche.
Und zwar wir ein setSize entweder auf ein Panel oder auf die ScrollPane dazu ignoriert.

Der hoffentlich schuldige Code:
Code:
JPanel inputHolder = new JPanel(); //auf diesem Panel werden die Inputs angezeigt
inputHolder.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
inputHolder.setLayout(new GridBagLayout());
GridBagConstraints c = new GridBagConstraints();
c.anchor = GridBagConstraints.NORTHWEST;
			
JScrollPane scrollPane = new JScrollPane(inputHolder);
scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
frame.getContentPane().add(scrollPane, BorderLayout.CENTER);
scrollPane.setSize(normSize);
inputHolder.setSize(normSize);
Iterator it = myFields.iterator();
while (it.hasNext()){ ... }

Im while werden denn die Komponenten raufgelegt (das Funktioniert glücklicherweise).
Bischer vermute ich das setSize muss an irgendeine andere Stelle (so habe ich zumindest ein anderes setSize-Problem gelösst)... ich weiss nur leider nicht wo die sein soll.

Ciao
Larayna
 
Moin,
üblicherweise wird bei Komponenten die PreferredSize gesetzt, wenn das nicht ausreicht, zusätzlich die MinimumSize und MaximumSize. Also probier es damit und sag an, ob es damit klappt.
 
Ok, mit einer Kombination aus setSize und preferredSize klappt es jetzt so wie es soll :).
Ich hoffe das bleibt so wenn die Gui grösser wird...
Jedenfalls Danke :).
Ciao
Larayna
 

Neue Beiträge

Zurück