PaneLayout
を使用すると、コンポーネントのサイズを兄弟コンポーネントとの相対で指定できます。パネルまたはフレームにPaneLayout
を適用すると、コンポーネントがコンテナに占める割合を相互の相対パーセントで制御できますが、ペイン間に移動可能なスプリッタ・バーは作成されません。
PaneLayout
では、各コンポーネントの配置とサイズをコンテナに追加済のコンポーネントとの相対で指定します。各コンポーネントでは、PaneConstraints
オブジェクトを指定します。このオブジェクトは、コンポーネントがスペースを使用しているレイアウト・マネージャと、既存のスペースの使用量を指定します。各コンポーネントの PaneConstraints
オブジェクトは、コンポーネントをコンテナに追加する時点で存在していたコンテナに適用されます。コンポーネントをコンテナに追加する順序が重要になります。
PaneConstraint変数
コンテナに追加するPaneConstraints
コンポーネントに対する制約は、次の4つの変数で構成されます。
CardLayout
の場合と同様に、コンテナ内の全コンポーネントに対して一意であることが必須)
このコンポーネントが配置指定されるsplitComponentNameの端
有効な値は、次のとおりです。
オプション | 操作 |
---|---|
PaneConstraints.TOP |
このコンポーネントは |
PaneConstraints.BOTTOM |
このコンポーネントは |
PaneConstraints.RIGHT |
このコンポーネントは |
PaneConstraints.LEFT |
このコンポーネントは |
PaneConstraints.ROOT |
このコンポーネントは最初に追加されたコンポーネントです。 |
PaneLayoutへのコンポーネントの追加方法
PaneConstraint
で重要な変数は、nameのみです。この値は他のコンポーネントで splitComponentName
として指定されて使用されます。splitComponentName
として第1コンポーネントのnameを指定する必要があります。splitComponentName
では、すでにコンテナに追加した任意のコンポーネントのnameを指定できます。
Javaビジュアル・エディタでのPaneLayoutコンテナの作成
layout
プロパティをPaneLayout
に変更します。これにより、インスペクタでPaneLayout
プロパティにアクセスできます。
PaneLayout
コンテナにドロップします。このコンポーネントは、別のコンポーネントを追加するまでコンテナ内で完全に最大化されます。
重要: PaneLayout
コンテナに追加した第1コンポーネント自体がコンテナだった場合、Javaビジュアル・エディタでは第2コンポーネントをPaneLayout
コンテナではなく外側のコンテナに追加しようとしているものとみなされます。コンポーネント・ツリーを使用して、コンポーネントの配置先コンテナを指定してください。
PaneLayout
に追加するには、同様の手順で描画して、他のコンポーネントとの相対位置を定義します。
たとえば、コンテナの右半分を分割するには、パネルの右端中央から第1コンポーネントの右下隅へと第3コンポーネントを描画します。
Copyright © 1997, 2007, Oracle. All rights reserved.