java.lang.Object
javax.swing.ScrollPaneLayout
- すべての実装されたインタフェース:
- LayoutManager,- Serializable,- ScrollPaneConstants
- 直系の既知のサブクラス:
- ScrollPaneLayout.UIResource
public class ScrollPaneLayout extends Object implements LayoutManager, ScrollPaneConstants, Serializable
JScrollPaneが使用するレイアウト・マネージャです。 JScrollPaneLayoutが扱うコンポーネントはビュー・ポート1個、スクロール・バー2個、行ヘッダー1個、列ヘッダー1個、「コーナー」コンポーネント4個の9個あります。 
 
 警告: このクラスの直列化されたオブジェクトは、今後のSwingリリースと互換ではなくなる予定です。 現在の直列化のサポートは、短期間の格納や、同じバージョンのSwingを実行するアプリケーション間のRMIに適しています。 1.4では、すべてのJavaBeansの長期ストレージのサポートがjava.beansパッケージに追加されました。 XMLEncoderを参照してください。 
- 導入されたバージョン:
- 1.2
- 関連項目:
- JScrollPane,- JViewport
- 
ネストされたクラスのサマリーネストされたクラス
- 
フィールドのサマリーフィールド修飾子と型フィールド説明protected JViewport列ヘッダーの子です。protected JScrollBarスクロール・ペインの水平スクロール・バーの子です。protected int水平スクロール・バーの表示ポリシーです。protected Component左下隅に表示するコンポーネントです。protected Component右下隅に表示するコンポーネントです。protected JViewport行ヘッダーの子です。protected Component左上隅に表示するコンポーネントです。protected Component右上隅に表示するコンポーネントです。protected JViewportスクロール・ペインのビュー・ポートの子です。protected JScrollBarスクロール・ペインの垂直スクロール・バーの子です。protected int垂直スクロール・バーの表示ポリシーです。インタフェース javax.swing.ScrollPaneConstantsで宣言されたフィールドCOLUMN_HEADER, HORIZONTAL_SCROLLBAR, HORIZONTAL_SCROLLBAR_ALWAYS, HORIZONTAL_SCROLLBAR_AS_NEEDED, HORIZONTAL_SCROLLBAR_NEVER, HORIZONTAL_SCROLLBAR_POLICY, LOWER_LEADING_CORNER, LOWER_LEFT_CORNER, LOWER_RIGHT_CORNER, LOWER_TRAILING_CORNER, ROW_HEADER, UPPER_LEADING_CORNER, UPPER_LEFT_CORNER, UPPER_RIGHT_CORNER, UPPER_TRAILING_CORNER, VERTICAL_SCROLLBAR, VERTICAL_SCROLLBAR_ALWAYS, VERTICAL_SCROLLBAR_AS_NEEDED, VERTICAL_SCROLLBAR_NEVER, VERTICAL_SCROLLBAR_POLICY, VIEWPORT
- 
コンストラクタのサマリーコンストラクタ
- 
メソッドのサマリー修飾子と型メソッド説明voidaddLayoutComponent(String s, Component c)指定されたコンポーネントをレイアウトに追加します。protected ComponentaddSingletonComponent(Component oldC, Component newC)既存のコンポーネントを削除します。列ヘッダーであるJViewportオブジェクトを返します。指定されたコーナーにあるComponentを返します。水平スクロールを処理するJScrollBarオブジェクトを返します。int水平スクロール・バーの表示ポリシーを返します。行ヘッダーであるJViewportオブジェクトを返します。垂直スクロールを処理するJScrollBarオブジェクトを返します。int垂直スクロール・バーの表示ポリシーを返します。スクロール可能なコンテンツを表示するJViewportオブジェクトを返します。getViewportBorderBounds(JScrollPane scrollpane)非推奨。voidlayoutContainer(Container parent)スクロール・ペインを配置します。minimumLayoutSize(Container parent)ScrollPaneの最小サイズは、イン・セットのサイズに、ビュー・ポートの最小サイズ、スクロール・ペインのviewportBorderイン・セット、可視ヘッダーの最小サイズ、およびdisplayPolicyがNEVERではないスクロール・バーの最小サイズを加えた値です。preferredLayoutSize(Container parent)ScrollPaneの推奨サイズは、イン・セットのサイズに、ビュー・ポートの推奨サイズ、可視ヘッダーの優先サイズ、および現在のビューと現在のスクロール・バーのdisplayPoliciesで表示されるスクロール・バーの推奨サイズを加えた値です。void指定されたコンポーネントをレイアウトから削除します。voidsetHorizontalScrollBarPolicy(int x)水平スクロール・バーの表示ポリシーを設定します。voidsetVerticalScrollBarPolicy(int x)垂直スクロール・バーの表示ポリシーを設定します。voidこのメソッドは、ScrollPaneLayoutがJScrollPaneのLayoutManagerとして設定されたあとで呼び出されます。
- 
フィールド詳細- 
viewportprotected JViewport viewportスクロール・ペインのビュー・ポートの子です。 デフォルトは空のJViewportです。
- 
vsbprotected JScrollBar vsbスクロール・ペインの垂直スクロール・バーの子です。 デフォルトはJScrollBarです。
- 
hsbprotected JScrollBar hsbスクロール・ペインの水平スクロール・バーの子です。 デフォルトはJScrollBarです。
- 
rowHeadprotected JViewport rowHead行ヘッダーの子です。 デフォルトはnullです。
- 
colHeadprotected JViewport colHead列ヘッダーの子です。 デフォルトはnullです。
- 
lowerLeftprotected Component lowerLeft左下隅に表示するコンポーネントです。 デフォルトはnullです。
- 
lowerRightprotected Component lowerRight右下隅に表示するコンポーネントです。 デフォルトはnullです。
- 
upperLeftprotected Component upperLeft左上隅に表示するコンポーネントです。 デフォルトはnullです。
- 
upperRightprotected Component upperRight右上隅に表示するコンポーネントです。 デフォルトはnullです。
- 
vsbPolicyprotected int vsbPolicy垂直スクロール・バーの表示ポリシーです。 デフォルトはScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDEDです。このフィールドは現在は使用されていません。代わりに JScrollPaneフィールドを使用してください。
- 
hsbPolicyprotected int hsbPolicy水平スクロール・バーの表示ポリシーです。 デフォルトはScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDEDです。このフィールドは現在は使用されていません。代わりに JScrollPaneフィールドを使用してください。
 
- 
- 
コンストラクタの詳細- 
ScrollPaneLayoutpublic ScrollPaneLayout()ScrollPaneLayoutを構築します。
 
- 
- 
メソッドの詳細- 
syncWithScrollPanepublic void syncWithScrollPane(JScrollPane sp)このメソッドは、ScrollPaneLayoutがJScrollPaneのLayoutManagerとして設定されたあとで呼び出されます。 このメソッドは通常、addLayoutComponentによって設定される内部フィールドをすべて初期化します。 次に例を示します。ScrollPaneLayout mySPLayout = new ScrollPanelLayout() { public void layoutContainer(Container p) { super.layoutContainer(p); // do some extra work here ... } }; scrollpane.setLayout(mySPLayout):- パラメータ:
- sp-- JScrollPaneのインスタンス
 
- 
addSingletonComponent既存のコンポーネントを削除します。 左隅や垂直スクロール・バーなどの新しいコンポーネントを追加すると、既存のコンポーネント(存在する場合)は削除されます。このメソッドは newCを返します。oldCがnewCと同じでなく、nullでもない場合、それは親から削除されます。- パラメータ:
- oldC- 置き換える- Component
- newC- 追加する- Component
- 戻り値:
- newC
 
- 
addLayoutComponent指定されたコンポーネントをレイアウトに追加します。 レイアウトは、次のいずれかの値を使用して指定します。- ScrollPaneConstants.VIEWPORT
- ScrollPaneConstants.VERTICAL_SCROLLBAR
- ScrollPaneConstants.HORIZONTAL_SCROLLBAR
- ScrollPaneConstants.ROW_HEADER
- ScrollPaneConstants.COLUMN_HEADER
- ScrollPaneConstants.LOWER_LEFT_CORNER
- ScrollPaneConstants.LOWER_RIGHT_CORNER
- ScrollPaneConstants.UPPER_LEFT_CORNER
- ScrollPaneConstants.UPPER_RIGHT_CORNER
 - 定義:
- addLayoutComponent、インタフェース:- LayoutManager
- パラメータ:
- s- コンポーネント識別子
- c- 追加されるコンポーネント
- 例外:
- IllegalArgumentException-- sが無効なキーの場合
 
- 
removeLayoutComponentpublic void removeLayoutComponent(Component c)指定されたコンポーネントをレイアウトから削除します。- 定義:
- removeLayoutComponent、インタフェース:- LayoutManager
- パラメータ:
- c- 削除されるコンポーネント
 
- 
getVerticalScrollBarPolicypublic int getVerticalScrollBarPolicy()垂直スクロール・バーの表示ポリシーを返します。- 戻り値:
- 表示ポリシーを示す整数
- 関連項目:
- setVerticalScrollBarPolicy(int)
 
- 
setVerticalScrollBarPolicypublic void setVerticalScrollBarPolicy(int x)垂直スクロール・バーの表示ポリシーを設定します。 オプションは次のとおりです。- ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED
- ScrollPaneConstants.VERTICAL_SCROLLBAR_NEVER
- ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS
 JScrollPaneバージョンを使用してください。 このメソッドは、Swing 1.0.2以前のバージョンのクラスに対する下位互換性のためにのみ用意されています。- パラメータ:
- x- 表示ポリシーを示す整数
- 例外:
- IllegalArgumentException-- xが上記のリストに示す有効な垂直スクロールバー・ポリシーでない場合
 
- 
getHorizontalScrollBarPolicypublic int getHorizontalScrollBarPolicy()水平スクロール・バーの表示ポリシーを返します。- 戻り値:
- 表示ポリシーを示す整数
- 関連項目:
- setHorizontalScrollBarPolicy(int)
 
- 
setHorizontalScrollBarPolicypublic void setHorizontalScrollBarPolicy(int x)水平スクロール・バーの表示ポリシーを設定します。 オプションは次のとおりです。- ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED
- ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER
- ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS
 JScrollPaneバージョンを使用してください。 このメソッドは、Swing 1.0.2以前のバージョンのクラスに対する下位互換性のためにのみ用意されています。- パラメータ:
- x- 表示ポリシーを示すint値
- 例外:
- IllegalArgumentException-- xが上記のリストに示す有効な水平スクロールバー・ポリシーでない場合
 
- 
getViewportpublic JViewport getViewport()スクロール可能なコンテンツを表示するJViewportオブジェクトを返します。- 戻り値:
- スクロール可能なコンテンツを表示するJViewportオブジェクト
- 関連項目:
- JScrollPane.getViewport()
 
- 
getHorizontalScrollBarpublic JScrollBar getHorizontalScrollBar()水平スクロールを処理するJScrollBarオブジェクトを返します。- 戻り値:
- 水平スクロールを処理するJScrollBarオブジェクト
- 関連項目:
- JScrollPane.getHorizontalScrollBar()
 
- 
getVerticalScrollBarpublic JScrollBar getVerticalScrollBar()垂直スクロールを処理するJScrollBarオブジェクトを返します。- 戻り値:
- 垂直スクロールを処理するJScrollBarオブジェクト
- 関連項目:
- JScrollPane.getVerticalScrollBar()
 
- 
getRowHeaderpublic JViewport getRowHeader()行ヘッダーであるJViewportオブジェクトを返します。- 戻り値:
- 行ヘッダーであるJViewportオブジェクト
- 関連項目:
- JScrollPane.getRowHeader()
 
- 
getColumnHeaderpublic JViewport getColumnHeader()列ヘッダーであるJViewportオブジェクトを返します。- 戻り値:
- 列ヘッダーであるJViewportオブジェクト
- 関連項目:
- JScrollPane.getColumnHeader()
 
- 
getCorner指定されたコーナーにあるComponentを返します。- パラメータ:
- key- コーナーを指定する- String
- 戻り値:
- ScrollPaneConstantsで定義されている、指定されたコーナーの- Component。- keyが4つのコーナーのうちのいずれでもない場合、- nullが返される
- 関連項目:
- JScrollPane.getCorner(java.lang.String)
 
- 
preferredLayoutSizeScrollPaneの推奨サイズは、イン・セットのサイズに、ビュー・ポートの推奨サイズ、可視ヘッダーの優先サイズ、および現在のビューと現在のスクロール・バーのdisplayPoliciesで表示されるスクロール・バーの推奨サイズを加えた値です。rowHeaderは適切な幅の一部として計算され、colHeaderは適切なサイズの一部として計算されます。 - 定義:
- preferredLayoutSize、インタフェース:- LayoutManager
- パラメータ:
- parent- 配置する- Container
- 戻り値:
- ビュー・ポートとスクロール・バーの適切なサイズを指定するDimensionオブジェクト
- 関連項目:
- ViewportLayout,- LayoutManager
 
- 
minimumLayoutSizeScrollPaneの最小サイズは、イン・セットのサイズに、ビュー・ポートの最小サイズ、スクロール・ペインのviewportBorderイン・セット、可視ヘッダーの最小サイズ、およびdisplayPolicyがNEVERではないスクロール・バーの最小サイズを加えた値です。- 定義:
- minimumLayoutSize、インタフェース:- LayoutManager
- パラメータ:
- parent- 配置する- Container
- 戻り値:
- 最小サイズを指定するDimensionオブジェクト
- 関連項目:
- LayoutManager.preferredLayoutSize(java.awt.Container)
 
- 
layoutContainerpublic void layoutContainer(Container parent)スクロール・ペインを配置します。 各コンポーネントの位置は、次の制約条件によって決まります。- 表示されている行ヘッダーは、適切な幅およびビュー・ポートの高さに設定される。
- 表示されている列ヘッダーは、適切な高さおよびビュー・ポートの幅に設定される。
-  垂直スクロール・バーが必要な場合(つまり、ビュー・ポートのエクステントの高さがそのビューより低い場合、あるいはdisplayPolicyがALWAYSの場合)、スクロール・バーはサイズに関して行ヘッダーと同様に扱われ、表示される。
- 水平スクロール・バーが必要な場合は、スクロール・バーは列ヘッダーと同様に扱われる(垂直スクロール・バーの項を参照)。
-  スクロール・ペインのviewportBorderがnull以外の場合は、ビュー・ポート境界に領域が割り当てられる。
- ビュー・ポートには、前回の制約条件が報告されたあとで利用可能な領域が割り当てられる。
- コーナー・コンポーネント(提供されている場合)は、スクロールバーとヘッダーの端に揃えられる。 垂直スクロールバーがある場合は右側のコーナーが表示され、水平スクロール・バーがある場合は下側のコーナーが表示される。行ヘッダーは左側のコーナーに配置され、列ヘッダーは上側のコーナーに配置される。
 - 定義:
- layoutContainer、インタフェース:- LayoutManager
- パラメータ:
- parent- レイアウトする- Container
 
- 
getViewportBorderBounds@Deprecatedpublic Rectangle getViewportBorderBounds(JScrollPane scrollpane)非推奨。JDKのSwing 1.1以降は、JScrollPane.getViewportBorderBounds()に置き換えられています。指定されたスクロール・ペインのビュー・ポート境界の境界を返します。- パラメータ:
- scrollpane-- JScrollPaneのインスタンス
- 戻り値:
- ビュー・ポート境界のサイズと位置
 
 
- 
JScrollPane.getViewportBorderBounds()に置き換えられています。