ボーダー、フロー、グリッド、ボックスなどの2つ以上のレイアウトの組み合わせと比較すると、グループレイアウトが重いことを知りたいと思います。
2 に答える
GroupLayout は、階層構成と組み合わせて、順次および並列の 2 種類の配置を使用します。
順次配置では、BoxLayout や FlowLayout が 1 つの軸に沿って配置するのと同じように、コンポーネントは単純に次々に配置されます。各コンポーネントの位置は、前のコンポーネントを基準にして定義されます。2 番目の方法では、コンポーネントを平行に配置します。つまり、同じスペース内で互いの上に配置します。これらは、垂直軸に沿ってベースライン、上、または下に配置できます。コンポーネントがすべて同じサイズでない場合、水平軸に沿って、左、右、または中央に配置できます。通常、一方の次元で並列に配置されたコンポーネントは、もう一方の次元で順番に配置されるため、重なりません。
これら 2 つの配置が強力なのは、階層的にネストできることです。この目的のために、GroupLayout はレイアウト グループを定義します。グループは順次または並列のいずれかであり、コンポーネント、他のグループ、およびギャップを含む場合があります。
シーケンシャル グループのサイズは含まれる要素のサイズの合計であり、並列グループのサイズは最大の要素のサイズに対応します (ただし、要素とベースラインの着地点に応じて、ベースラインのサイズは-aligned グループは、最大の要素よりも少し大きい場合があります)。
レイアウトの定義とは、順次配置と並列配置を組み合わせてコンポーネントをグループ化する方法を定義することを意味します。
これは抽象的すぎます。どちらの場合も、要素の正確な組み合わせに依存します。
2 つのケースをプロファイリングして比較してみてください。Java には、 YourkitやJMeterなどの優れたプロファイリング ツールがいくつかあります。