LayoutManager
大まかに次のように、コンテナ (JPanel など) 内の一連のコンポーネントを列に表示できる を 探しています。
- コンテナの幅は入力制約です。
- コンテナーの推奨高さは幅の関数であり、次のいずれかです。
- 複数の列に配置されている場合に、コンポーネントを幅に収めるのに必要な最小の高さ。
- コンポーネントを 1 つの列に収めるのに必要な最小の高さ。
- コンポーネントは、上から下、左から右の新聞コラムの順序で配置されます。
以下は、13 個のコンポーネントを示す例 (ローテク テキスト表示) です。3 列に収まる場合は、次のようになります。
Foo1 Foo6 Foo11
Foo2 Foo7 Foo12
Foo3 Foo8 Foo13
Foo4 Foo9
Foo5 Foo10
幅が広すぎる場合は、次のようになります。
Foo1 Foo8
Foo2 Foo9
Foo3 Foo10
Foo4 Foo11
Foo5 Foo12
Foo6 Foo13
Foo7
幅が広すぎると、次のようになります。
Foo1
Foo2
Foo3
Foo4
Foo5
Foo6
Foo7
Foo8
Foo9
Foo10
Foo11
Foo12
Foo13
このようなことを行うために使用またはサブクラス化できる既存の LayoutManager はありますか?
編集:これは垂直レイアウトに関するこの他の質問に非常に近いですが、そのレイアウトにはコンポーネントの高さが制約であり、私のコンポーネントの幅は制約です。