GridBagLayout
-
Hi. Kann man wenn man für einen Frame ein GridBagLayout verwendet eigentlich als Unterkomponente keine Panels verwenden?! Wenn ich das mache verschiebt sich alles völlig..Eigentlich wollte ich testweise eine Komponente links anordnen die dann 30% des Platzes links ausfüllt (mit weightx=0.3) und am rechten Rand eine Komponente die 70% einnmimmt (weightx=0.7)..weighty jeweils 1.0, sonst Standardwerte..wenn ich Buttons als Komponenten verwende funktionierts. Wenn ich aber einen Panel verwende der seinerseit Komponenten mit FlowLayout drin hat, nimmt der plötzlich den ganzen Platz ein (außer am Rand n Stück) und nicht nur die 30% wie ich das wollte?! Hoffe es kann mir jemand helfen. Vielleicht weiß ja auch jemand n gutes Tutorial zu dem Thema..
-
Hinweis:
public double weightx
Specifies how to distribute extra horizontal space.
The grid bag layout manager calculates the weight of a column to be the maximum weightx of all the components in a column. If the resulting layout is smaller horizontally than the area it needs to fill, the extra space is distributed to each column in proportion to its weight. A column that has a weight of zero receives no extra space.
If all the weights are zero, all the extra space appears between the grids of the cell and the left and right edges.
The default value of this field is 0. weightx should be a non-negative value.
weightx hat also erstmal garnichts damit zu tun, wieviel Platz belegt wird. Es regelt nur, wieviel vom zusätzlich vorhandenen Platz verwendet wird.
-
hasche mal schnöll foiöör?
-
ahja..die Komponenten nehmen also erstmal soviel Platz ein wie sie brauchen und übrschüssiger Platz kann dann mit weightx und y verteilt werden.. es ist aber doch trotzdem im Prinzip ok mit weightx und weighty Proportionen festzulegen oder? Also muß ich nur bei dem Panel ein anderes Layout festlegen daß eben die Komponenten nach unten verteilt werden anstatt nach rechts sich über die 30%-Grenze auszudehnen.. oder wie verwendet man das Layout "richtig"? weil mit gridx und so kann man ja auch nur festlegen in welcher Spalte und so die Komponenten sind und nicht wirkliche Pixel oder Prozentgrößen...