Java GridBagLayout中的Weightx和Weighty
理解这两个属性我有些困难。 我该如何给予组件重量? 这些数字是如何计算的? 我试图在网上阅读几篇文章,但我不明白。
谢谢。
如果Panel中的空间大于其中包含的组件的preferredDimension,则weightx和weighty用于将额外空间分配给各个组件。
使用从0.0到1.0的值(想想这个百分比)。
-
weightx是水平间距
-
重量是垂直间距
桌面中最常见的情况是侧窗格保持固定大小(weightx / weighty = 0.0),中间窗格占用剩余空间(weightx / weighty = 1.0)。 但是,使用变体,您可以完全控制应用程序在帧大小更改时如何调整各个组件的大小。
weightx
和weighty
用于确定如何在列之间和行之间分配空间。
此值对于指定resize行为很重要。如果未指定weightx或weighty中的任何一个,则所有组件将在其容器的中心聚集在一起。 有关更多信息,请参阅GridBagLayout的文档。
对于每列,权重与为该列中的组件指定的最高权重x相关。 类似地,每行的权重与为该行内的组件指定的最高权重相关。