2009-08-03 6 views
0

Ich habe zwei JPanels (nennen wir diese Panel1 und Panel2). Diese Platten haben die gleiche Breite, aber unterschiedliche Höhen.Verschachtelt JPanel Größenanpassung Problem

Ich möchte diese JPanels in einem großen JPanel (wir nennen es Panel0), und stapeln sie übereinander (ich entschied, Panel0 Layout als GridLayout (0,1)) zu setzen.

Das Problem ist, dass beide verschachtelten Panels (Panels 1 und 2) am Ende die gleichen Dimensionen (die größten zwischen den beiden), anstelle der setPreferredDimension und setDimension, die ich auf ihnen festgelegt.

Entschuldigung, ich kann wirklich keinen Code zur Verfügung stellen (es gibt eine Menge Mist, der dem Panel hinzugefügt wurde, und es ist alles für etwas, das mit der Arbeit zusammenhängt). Irgendein Rat? Vielen Dank!

Antwort

4

GridLayout zwingt alle Komponenten, die gleiche Größe zu haben; deshalb nennt man es ein Gitter.

Da Sie nur zwei Panels haben, würde ich vorschlagen, ein BorderLayout mit einem Panel bei NORTH und das andere CENTER zu verwenden. Wenn Sie die Größenänderung zulassen, ist die in CENTER die Erweiterung, um zusätzlichen vertikalen Platz zu füllen, also seien Sie sich dessen bewusst.

+0

Ich war halb fertig, die gleiche Antwort eintippend. GridLayout ist das Problem. – thedude19

+0

Oh wow, funktioniert super! Vielen Dank! – Monster