JavaTM Platform
Standard Ed. 6

javax.swing
クラス ScrollPaneLayout

java.lang.Object
  上位を拡張 javax.swing.ScrollPaneLayout
すべての実装されたインタフェース:
LayoutManager, Serializable, ScrollPaneConstants
直系の既知のサブクラス:
ScrollPaneLayout.UIResource

public class ScrollPaneLayout
extends Object
implements LayoutManager, ScrollPaneConstants, Serializable

JScrollPane が使用するレイアウトマネージャーです。JScrollPaneLayout が扱うコンポーネントは 9 個あります。その内訳は、ビューポート 1 個、スクロールバー 2 個、行ヘッダー 1 個、列ヘッダー 1 個、「コーナー」コンポーネント 4 個です。 

警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。JDK Version 1.4 以降、すべての JavaBeans の長期間の運用サポートは、java.beans パッケージに追加されています。詳細は、XMLEncoder を参照してください。

関連項目:
JScrollPane, JViewport

入れ子のクラスの概要
static class ScrollPaneLayout.UIResource
          ScrollPaneLayout の UI リソースバージョンです。
 
フィールドの概要
protected  JViewport colHead
          列ヘッダーの子です。
protected  JScrollBar hsb
          スクロール区画の水平スクロールバーの子です。
protected  int hsbPolicy
          水平スクロールバーの表示ポリシーです。
protected  Component lowerLeft
          左下隅に表示するコンポーネントです。
protected  Component lowerRight
          右下隅に表示するコンポーネントです。
protected  JViewport rowHead
          行ヘッダーの子です。
protected  Component upperLeft
          左上隅に表示するコンポーネントです。
protected  Component upperRight
          右上隅に表示するコンポーネントです。
protected  JViewport viewport
          スクロール区画のビューポートの子です。
protected  JScrollBar vsb
          スクロール区画の垂直スクロールバーの子です。
protected  int vsbPolicy
          垂直スクロールバーの表示ポリシーです。
 
インタフェース 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
 
コンストラクタの概要
ScrollPaneLayout()
           
 
メソッドの概要
 void addLayoutComponent(String s, Component c)
          指定されたコンポーネントをレイアウトに追加します。
protected  Component addSingletonComponent(Component oldC, Component newC)
          既存のコンポーネントを削除します。
 JViewport getColumnHeader()
          列ヘッダーである JViewport オブジェクトを返します。
 Component getCorner(String key)
          指定されたコーナーにある Component を返します。
 JScrollBar getHorizontalScrollBar()
          水平スクロールを処理する JScrollBar オブジェクトを返します。
 int getHorizontalScrollBarPolicy()
          水平スクロールバーの表示ポリシーを返します。
 JViewport getRowHeader()
          行ヘッダーである JViewport オブジェクトを返します。
 JScrollBar getVerticalScrollBar()
          垂直スクロールを処理する JScrollBar オブジェクトを返します。
 int getVerticalScrollBarPolicy()
          垂直スクロールバーの表示ポリシーを返します。
 JViewport getViewport()
          スクロール可能なコンテンツを表示する JViewport オブジェクトを返します。
 Rectangle getViewportBorderBounds(JScrollPane scrollpane)
          推奨されていません。 JDK の Swing 1.1 以降は JScrollPane.getViewportBorderBounds() で置き換えられました。
 void layoutContainer(Container parent)
          スクロール区画を配置します。
 Dimension minimumLayoutSize(Container parent)
          ScrollPane の最小サイズは、インセットのサイズに、ビューポートの最小サイズ、スクロールペインのビューポート境界のインセット、表示ヘッダーの最小サイズ、および表示ポリシーが NEVER ではないスクロールバーの最小サイズを加えた値です。
 Dimension preferredLayoutSize(Container parent)
          ScrollPane の適切なサイズは、インセットのサイズに、ビューポート、表示ヘッダー、および現在のビューと表示ポリシーによって表示されるスクロールバーの適切なサイズを加えた値です。
 void removeLayoutComponent(Component c)
          指定されたコンポーネントをレイアウトから削除します。
 void setHorizontalScrollBarPolicy(int x)
          水平スクロールバーの表示ポリシーを設定します。
 void setVerticalScrollBarPolicy(int x)
          垂直スクロールバーの表示ポリシーを設定します。
 void syncWithScrollPane(JScrollPane sp)
          このメソッドは、ScrollPaneLayout が JScrollPane の LayoutManager として設定されたあとで呼び出されます。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

viewport

protected JViewport viewport
スクロール区画のビューポートの子です。デフォルトは空の JViewport です。

関連項目:
JScrollPane.setViewport(javax.swing.JViewport)

vsb

protected JScrollBar vsb
スクロール区画の垂直スクロールバーの子です。デフォルトは JScrollBar です。

関連項目:
JScrollPane.setVerticalScrollBar(javax.swing.JScrollBar)

hsb

protected JScrollBar hsb
スクロール区画の水平スクロールバーの子です。デフォルトは JScrollBar です。

関連項目:
JScrollPane.setHorizontalScrollBar(javax.swing.JScrollBar)

rowHead

protected JViewport rowHead
行ヘッダーの子です。デフォルトは null です。

関連項目:
JScrollPane.setRowHeader(javax.swing.JViewport)

colHead

protected JViewport colHead
列ヘッダーの子です。デフォルトは null です。

関連項目:
JScrollPane.setColumnHeader(javax.swing.JViewport)

lowerLeft

protected Component lowerLeft
左下隅に表示するコンポーネントです。デフォルトは null です。

関連項目:
JScrollPane.setCorner(java.lang.String, java.awt.Component)

lowerRight

protected Component lowerRight
右下隅に表示するコンポーネントです。デフォルトは null です。

関連項目:
JScrollPane.setCorner(java.lang.String, java.awt.Component)

upperLeft

protected Component upperLeft
左上隅に表示するコンポーネントです。デフォルトは null です。

関連項目:
JScrollPane.setCorner(java.lang.String, java.awt.Component)

upperRight

protected Component upperRight
右上隅に表示するコンポーネントです。デフォルトは null です。

関連項目:
JScrollPane.setCorner(java.lang.String, java.awt.Component)

vsbPolicy

protected int vsbPolicy
垂直スクロールバーの表示ポリシーです。デフォルトは ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED です。

このフィールドは現在は使用されていません。代わりに JScrollPane フィールドを使用してください。

関連項目:
JScrollPane.setVerticalScrollBarPolicy(int)

hsbPolicy

protected int hsbPolicy
水平スクロールバーの表示ポリシーです。デフォルトは ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED です。

このフィールドは現在は使用されていません。代わりに JScrollPane フィールドを使用してください。

関連項目:
JScrollPane.setHorizontalScrollBarPolicy(int)
コンストラクタの詳細

ScrollPaneLayout

public ScrollPaneLayout()
メソッドの詳細

syncWithScrollPane

public 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):
 


addSingletonComponent

protected Component addSingletonComponent(Component oldC,
                                          Component newC)
既存のコンポーネントを削除します。左隅や垂直スクロールバーなどの新しいコンポーネントを追加すると、既存のコンポーネント (存在する場合) は削除されます。

このメソッドは newC を返します。oldCnewC と同じでなく、null でもない場合、oldC は親から削除されます。

パラメータ:
oldC - 置き換える Component
newC - 追加する Component
戻り値:
newC

addLayoutComponent

public void addLayoutComponent(String s,
                               Component c)
指定されたコンポーネントをレイアウトに追加します。レイアウトは、次のいずれかの値を使用して指定します。

定義:
インタフェース LayoutManager 内の addLayoutComponent
パラメータ:
s - コンポーネント識別子
c - 追加されるコンポーネント
例外:
IllegalArgumentException - s が無効なキーの場合

removeLayoutComponent

public void removeLayoutComponent(Component c)
指定されたコンポーネントをレイアウトから削除します。

定義:
インタフェース LayoutManager 内の removeLayoutComponent
パラメータ:
c - 削除されるコンポーネント

getVerticalScrollBarPolicy

public int getVerticalScrollBarPolicy()
垂直スクロールバーの表示ポリシーを返します。

戻り値:
表示ポリシーを示す整数
関連項目:
setVerticalScrollBarPolicy(int)

setVerticalScrollBarPolicy

public void setVerticalScrollBarPolicy(int x)
垂直スクロールバーの表示ポリシーを設定します。オプションを次に示します。 注:アプリケーションでは、このメソッドの JScrollPane バージョンを使用してください。このメソッドは、Swing 1.0.2 以前のバージョンのクラスに対する下位互換性のためにのみ用意されています。

パラメータ:
x - 表示ポリシーを示す整数
例外:
IllegalArgumentException - x が上記のリストに示す有効な垂直スクロールバーポリシーでない場合

getHorizontalScrollBarPolicy

public int getHorizontalScrollBarPolicy()
水平スクロールバーの表示ポリシーを返します。

戻り値:
表示ポリシーを示す整数
関連項目:
setHorizontalScrollBarPolicy(int)

setHorizontalScrollBarPolicy

public void setHorizontalScrollBarPolicy(int x)
水平スクロールバーの表示ポリシーを設定します。オプションを次に示します。 注:アプリケーションでは、このメソッドの JScrollPane バージョンを使用してください。このメソッドは、Swing 1.0.2 以前のバージョンのクラスに対する下位互換性のためにのみ用意されています。

パラメータ:
x - 表示ポリシーを示す int 値
例外:
IllegalArgumentException - x が上記のリストに示す有効な水平スクロールバーポリシーでない場合

getViewport

public JViewport getViewport()
スクロール可能なコンテンツを表示する JViewport オブジェクトを返します。

戻り値:
スクロール可能なコンテンツを表示する JViewport オブジェクト
関連項目:
JScrollPane.getViewport()

getHorizontalScrollBar

public JScrollBar getHorizontalScrollBar()
水平スクロールを処理する JScrollBar オブジェクトを返します。

戻り値:
水平スクロールを処理する JScrollBar オブジェクト
関連項目:
JScrollPane.getHorizontalScrollBar()

getVerticalScrollBar

public JScrollBar getVerticalScrollBar()
垂直スクロールを処理する JScrollBar オブジェクトを返します。

戻り値:
垂直スクロールを処理する JScrollBar オブジェクト
関連項目:
JScrollPane.getVerticalScrollBar()

getRowHeader

public JViewport getRowHeader()
行ヘッダーである JViewport オブジェクトを返します。

戻り値:
行ヘッダーである JViewport オブジェクト
関連項目:
JScrollPane.getRowHeader()

getColumnHeader

public JViewport getColumnHeader()
列ヘッダーである JViewport オブジェクトを返します。

戻り値:
列ヘッダーである JViewport オブジェクト
関連項目:
JScrollPane.getColumnHeader()

getCorner

public Component getCorner(String key)
指定されたコーナーにある Component を返します。

パラメータ:
key - コーナーを指定する String
戻り値:
ScrollPaneConstants で定義されている、指定されたコーナーの Componentkey が 4 つのコーナーのうちのいずれでもない場合、 null が返される
関連項目:
JScrollPane.getCorner(java.lang.String)

preferredLayoutSize

public Dimension preferredLayoutSize(Container parent)
ScrollPane の適切なサイズは、インセットのサイズに、ビューポート、表示ヘッダー、および現在のビューと表示ポリシーによって表示されるスクロールバーの適切なサイズを加えた値です。 

rowHeader は適切な幅の一部として計算され、colHeader は適切なサイズの一部として計算されます。

定義:
インタフェース LayoutManager 内の preferredLayoutSize
パラメータ:
parent - 配置する Container
戻り値:
ビューポートとスクロールバーの適切なサイズを指定する Dimension オブジェクト
関連項目:
ViewportLayout, LayoutManager

minimumLayoutSize

public Dimension minimumLayoutSize(Container parent)
ScrollPane の最小サイズは、インセットのサイズに、ビューポートの最小サイズ、スクロールペインのビューポート境界のインセット、表示ヘッダーの最小サイズ、および表示ポリシーが NEVER ではないスクロールバーの最小サイズを加えた値です。

定義:
インタフェース LayoutManager 内の minimumLayoutSize
パラメータ:
parent - 配置する Container
戻り値:
最小サイズを指定する Dimension オブジェクト
関連項目:
LayoutManager.preferredLayoutSize(java.awt.Container)

layoutContainer

public void layoutContainer(Container parent)
スクロール区画を配置します。各コンポーネントの位置は、次の制約条件によって決まります。

定義:
インタフェース LayoutManager 内の layoutContainer
パラメータ:
parent - レイアウトする Container

getViewportBorderBounds

@Deprecated
public Rectangle getViewportBorderBounds(JScrollPane scrollpane)
推奨されていません。 JDK の Swing 1.1 以降は JScrollPane.getViewportBorderBounds() で置き換えられました。

指定されたスクロールペインのビューポート境界の境界を返します。

戻り値:
ビューポート境界のサイズと位置

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。