|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Object
|
+--java.awt.Component
|
+--java.awt.Container
|
+--javax.swing.JComponent
|
+--javax.swing.JScrollPane
コンポーネントのスクロール可能なビューを提供します。JScrollPane は、ビューポート、オプションの垂直スクロールバーと水平スクロールバー、およびオプションの行ヘッダビューポートと列ヘッダビューポートを管理します。詳細は、「The Java Tutorial」 の「How to Use Scroll Panes」にある JScrollPane のタスク指向のドキュメントを参照してください。
|
JViewport は、たとえば、テキストファイルなど、データソースへのウィンドウまたは「ビューポート」を提供します。データソースは JViewport のビューによって表示される「スクロール可能なクライアント」(データモデル) です。JScrollPane は、右の図に示すように、基本的に JScrollBar、JViewport、およびそれらの接続から構成されます。
スクロールバーとビューポートのほかに、JScrollPane には列ヘッダと行ヘッダがある場合もあります。これらはそれぞれ setRowHeaderView と setColumnHeaderView を使って指定する JViewport オブジェクトです。列ヘッダビューポートは自動的に左右にスクロールして、メインビューポートの左右へのスクロールを追跡します。垂直にはスクロールしません。行ヘッダも同じように動作します。
デフォルトでは、コーナーは空です。スクロール区画に追加したい機能や装飾がある場合には、setCorner を使ってコンポーネントをコーナーに追加することができます。コーナーコンポーネントのサイズは、ヘッダとその周りのスクロールバーのサイズによって決まります。
メインビューポートの周りにボーダを追加するには、setViewportBorder を使用できます。もちろん、setBorder を使ってスクロール区画全体にボーダを追加することもできます。
標準の Look & Feel (L&F) 表現でこのコンポーネントが使用するキーボードのキーについては、JScrollPane のキーの割り当てを参照してください。
メインのビューポートのビューがそのビューポートよりも小さいか、または不透明な場合、行う必要のある共通のオペレーションは、使用されるバックグラウンドカラーを設定することです。このオペレーションを実行するには、scrollPane.getViewport().setBackground() を使って、ビューポートのバックグラウンドカラーを設定します。ビューポートの色を設定し、スクロール区画の色を設定しないのは、デフォルトで JViewport が不透明であるためです。特に、不透明だと、そのバックグラウンドをバックグラウンドカラーを使って完全に塗りつぶすことになります。したがって、JScrollPane がそのバックグラウンドを描画するとき、ビューポートは通常、同じバックグラウンドの上から描画することになります。
警告: このクラスの直列化されたオブジェクトは、今後の Swing リリースと互換ではなくなる予定です。現在の直列化のサポートは、短期間の運用や、同じバージョンの Swing を実行するアプリケーション間の RMI に適しています。今後の Swing リリースでは、長期間の持続性をサポートする予定です。
JScrollBar,
JViewport,
setViewportView(java.awt.Component),
setRowHeaderView(java.awt.Component),
setColumnHeaderView(java.awt.Component),
setCorner(java.lang.String, java.awt.Component),
setViewportBorder(javax.swing.border.Border), 直列化された形式| 内部クラスの概要 | |
protected class |
JScrollPane.AccessibleJScrollPane
このクラスは JScrollPane クラス用のユーザ補助機能のサポートを実装しています。 |
protected class |
JScrollPane.ScrollBar
デフォルトでは、 JScrollPane はこのクラスのインスタンスであるスクロールバーを作成します。 |
| クラス javax.swing.JComponent から継承した内部クラス |
JComponent.AccessibleJComponent |
| クラス java.awt.Container から継承した内部クラス |
Container.AccessibleAWTContainer |
| クラス java.awt.Component から継承した内部クラス |
Component.AccessibleAWTComponent |
| フィールドの概要 | |
protected JViewport |
columnHeader
列ヘッダの子です。 |
protected JScrollBar |
horizontalScrollBar
スクロール区画の水平スクロールバーの子です。 |
protected int |
horizontalScrollBarPolicy
水平スクロールバーの表示ポリシーです。 |
protected Component |
lowerLeft
左下隅に表示するコンポーネントです。 |
protected Component |
lowerRight
右下隅に表示するコンポーネントです。 |
protected JViewport |
rowHeader
行ヘッダの子です。 |
protected Component |
upperLeft
左上隅に表示するコンポーネントです。 |
protected Component |
upperRight
右上隅に表示するコンポーネントです。 |
protected JScrollBar |
verticalScrollBar
スクロール区画の垂直スクロールバーの子です。 |
protected int |
verticalScrollBarPolicy
垂直スクロールバーの表示ポリシーです。 |
protected JViewport |
viewport
スクロール区画のビューポートの子です。 |
| クラス javax.swing.JComponent から継承したフィールド |
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW |
| クラス java.awt.Component から継承したフィールド |
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT |
| インタフェース java.awt.image.ImageObserver から継承したフィールド |
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH |
| コンストラクタの概要 | |
JScrollPane()
必要に応じて水平および垂直の両方のスクロールバーが表示される空の (ビューポイントのビューがない) JScrollPane を作成します。 |
|
JScrollPane(Component view)
指定されたコンポーネントのコンテンツを表示する JScrollPane を作成します。 |
|
JScrollPane(Component view,
int vsbPolicy,
int hsbPolicy)
ビューの位置を 1 組のスクロールバーを使ってコントロールできるビューポート内のビューコンポーネントを表示する、 JScrollPane を作成します。 |
|
JScrollPane(int vsbPolicy,
int hsbPolicy)
スクロールバーポリシーを指定して空の (ビューポイントのビューがない) JScrollPane を作成します。 |
|
| メソッドの概要 | |
JScrollBar |
createHorizontalScrollBar()
デフォルトで JScrollPane.ScrollBar を返します。 |
JScrollBar |
createVerticalScrollBar()
デフォルトで JScrollPane.ScrollBar を返します。 |
protected JViewport |
createViewport()
デフォルトで新しい JViewport を返します。 |
AccessibleContext |
getAccessibleContext()
この JScrollPane に関連した AccessibleContext を返します。 |
JViewport |
getColumnHeader()
列ヘッダを返します。 |
Component |
getCorner(String key)
指定されたコーナーにあるコンポーネントを返します。 |
JScrollBar |
getHorizontalScrollBar()
ビューポートの水平のビュー位置を制御する水平スクロールバーを返します。 |
int |
getHorizontalScrollBarPolicy()
水平スクロールバーのポリシーの値を返します。 |
JViewport |
getRowHeader()
行ヘッダを返します。 |
ScrollPaneUI |
getUI()
このコンポーネントを描画する Look & Feel (L&F) オブジェクトを返します。 |
String |
getUIClassID()
Look & Feel クラスの名前の構築に使用された接頭辞を返します。 |
JScrollBar |
getVerticalScrollBar()
ビューポートの垂直のビュー位置を制御する垂直スクロールバーを返します。 |
int |
getVerticalScrollBarPolicy()
垂直スクロールバーのポリシーの値を返します。 |
JViewport |
getViewport()
現在の JViewport を返します。 |
Border |
getViewportBorder()
ビューポートを囲む Border オブジェクトを返します。 |
Rectangle |
getViewportBorderBounds()
ビューポートのボーダの境界を返します。 |
boolean |
isValidateRoot()
JScrollPane の下位オブジェクトで revalidate を呼び出します。 |
protected String |
paramString()
この JScrollPane の文字列表現を返します。 |
void |
setColumnHeader(JViewport columnHeader)
以前の列ヘッダがある場合はそれを削除します。 |
void |
setColumnHeaderView(Component view)
必要に応じて列ヘッダのビューポートを作成し、ビューを設定してから、列ヘッダのビューポートをスクロール区画に追加します。 |
void |
setComponentOrientation(ComponentOrientation co)
垂直および水平スクロールバーの方向を、 ComponentOrientation 引数で指定されたものに設定します。 |
void |
setCorner(String key,
Component corner)
スクロール区画のコーナーに表示される子を追加します (スペースがある場合)。 |
void |
setHorizontalScrollBar(JScrollBar horizontalScrollBar)
スクロール区画にビューポートの水平のビュー位置を制御するスクロールバーを追加します。 |
void |
setHorizontalScrollBarPolicy(int policy)
水平スクロールバーがスクロール区画にいつ表示されるかを設定します。 |
void |
setLayout(LayoutManager layout)
JScrollPane のレイアウトマネージャを設定します。 |
void |
setRowHeader(JViewport rowHeader)
以前の行ヘッダがある場合はそれを削除します。 |
void |
setRowHeaderView(Component view)
必要に応じて行ヘッダのビューポートを作成し、ビューを設定してから、行ヘッダのビューポートをスクロール区画に追加します。 |
void |
setUI(ScrollPaneUI ui)
コンポーネントの Look & Feel (L&F) を提供する ScrollPaneUI オブジェクトを設定します。 |
void |
setVerticalScrollBar(JScrollBar verticalScrollBar)
スクロール区画にビューポートの垂直のビュー位置を制御するスクロールバーを追加します。 |
void |
setVerticalScrollBarPolicy(int policy)
垂直スクロールバーがスクロール区画にいつ表示されるかを設定します。 |
void |
setViewport(JViewport viewport)
以前のビューポートがある場合はそれを削除し、新しいビューポートのビュー位置を +x、+y 四分区間内に設定し、行および列ヘッダ (存在する場合) と新しいビューポートを同期させ、結果としてスクロールバーとヘッダと新しいビューポートを同期させます。 |
void |
setViewportBorder(Border viewportBorder)
ビューポートのボーダを追加します。 |
void |
setViewportView(Component view)
必要に応じてビューポートを作成してから、ビューを設定します。 |
void |
updateUI()
現在の ScrollPaneUI オブジェクトを現在のデフォルト Look & Feel のバージョンに置き換えます。 |
| クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| フィールドの詳細 |
protected int verticalScrollBarPolicy
JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED です。setVerticalScrollBarPolicy(int)protected int horizontalScrollBarPolicy
JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED です。setHorizontalScrollBarPolicy(int)protected JViewport viewport
JViewport です。setViewport(javax.swing.JViewport)protected JScrollBar verticalScrollBar
JScrollBar です。setVerticalScrollBar(javax.swing.JScrollBar)protected JScrollBar horizontalScrollBar
JScrollBar です。setHorizontalScrollBar(javax.swing.JScrollBar)protected JViewport rowHeader
null です。setRowHeader(javax.swing.JViewport)protected JViewport columnHeader
null です。setColumnHeader(javax.swing.JViewport)protected Component lowerLeft
null です。setCorner(java.lang.String, java.awt.Component)protected Component lowerRight
null です。setCorner(java.lang.String, java.awt.Component)protected Component upperLeft
null です。setCorner(java.lang.String, java.awt.Component)protected Component upperRight
null です。setCorner(java.lang.String, java.awt.Component)| コンストラクタの詳細 |
public JScrollPane(Component view,
int vsbPolicy,
int hsbPolicy)
JScrollPane を作成します。スクロールバーのポリシーは、スクロールバーがいつ表示されるかを指定します。たとえば、vsbPolicy が VERTICAL_SCROLLBAR_AS_NEEDED であれば、垂直スクロールバーはビューが垂直方向に収まらない場合にだけ表示されます。利用可能なポリシーの設定は setVerticalScrollBarPolicy(int) および setHorizontalScrollBarPolicy(int) にリストされています。view - スクロール区画のビューポートに表示するコンポーネントvsbPolicy - 垂直スクロールバーのポリシーを指定する整数hsbPolicy - 水平スクロールバーのポリシーを指定する整数setViewportView(java.awt.Component)public JScrollPane(Component view)
JScrollPane を作成します。コンポーネントのコンテンツがビューより大きい場合は、常に水平および垂直スクロールバーの両方が表示されます。view - スクロール区画のビューポートに表示するコンポーネントsetViewportView(java.awt.Component)
public JScrollPane(int vsbPolicy,
int hsbPolicy)
JScrollPane を作成します。利用可能なポリシーの設定は setVerticalScrollBarPolicy(int) および setHorizontalScrollBarPolicy(int) にリストされています。vsbPolicy - 垂直スクロールバーのポリシーを指定する整数hsbPolicy - 水平スクロールバーのポリシーを指定する整数setViewportView(java.awt.Component)public JScrollPane()
JScrollPane を作成します。| メソッドの詳細 |
public ScrollPaneUI getUI()
ScrollPaneUI オブジェクトsetUI(javax.swing.plaf.ScrollPaneUI)public void setUI(ScrollPaneUI ui)
ScrollPaneUI オブジェクトを設定します。ui - ScrollPaneUI L&F オブジェクトgetUI()public void updateUI()
ScrollPaneUI オブジェクトを現在のデフォルト Look & Feel のバージョンに置き換えます。デフォルトの Look & Feel が変更されたときに呼び出されます。JComponent 内の updateUIJComponent.updateUI(),
UIManager.getUI(javax.swing.JComponent)public String getUIClassID()
JComponent 内の getUIClassIDJComponent.getUIClassID(),
UIDefaults.getUI(javax.swing.JComponent)public void setLayout(LayoutManager layout)
JScrollPane のレイアウトマネージャを設定します。このメソッドは、java.awt.Container の setLayout をオーバーライドして、ScrollPaneLayout のサブクラスである LayoutManager だけが JScrollPane で使用できることが保証されるようにします。Container 内の setLayoutlayout - 指定するレイアウトマネージャClassCastException - レイアウトが ScrollPaneLayout でない場合Container.getLayout(),
Container.setLayout(java.awt.LayoutManager)public boolean isValidateRoot()
JScrollPane の下位オブジェクトで revalidate を呼び出します。たとえば、ビューポートのビューは、JScrollPane とそのすべての下位オブジェクトを検証する要求がキューに入れられるようにします。JComponent 内の isValidateRootJComponent.revalidate()public int getVerticalScrollBarPolicy()
verticalScrollBarPolicy プロパティsetVerticalScrollBarPolicy(int)public void setVerticalScrollBarPolicy(int policy)
policy - 上記の 3 つの値のどれかIllegalArgumentException - policy が上記の正当な値のどれかではない場合getVerticalScrollBarPolicy()public int getHorizontalScrollBarPolicy()
horizontalScrollBarPolicy プロパティsetHorizontalScrollBarPolicy(int)public void setHorizontalScrollBarPolicy(int policy)
policy - 上記の 3 つの値のどれかIllegalArgumentException - policy が上記の正当な値のどれかではない場合getHorizontalScrollBarPolicy()public Border getViewportBorder()
Border オブジェクトを返します。viewportBorder プロパティsetViewportBorder(javax.swing.border.Border)public void setViewportBorder(Border viewportBorder)
JViewport は JComponent のボーダプロパティをサポートしません。同様に、JScrollPane のビューポートを設定しても、viewportBorder プロパティには影響しません。
このプロパティのデフォルト値は Look & Feel の実装によって算出されます。
viewportBorder - 追加されるボーダgetViewportBorder(),
setViewport(javax.swing.JViewport)public Rectangle getViewportBorderBounds()
Rectangle オブジェクトpublic JScrollBar createHorizontalScrollBar()
JScrollPane.ScrollBar を返します。サブクラスはこのメソッドをオーバーライドして ScrollPaneUI の実装に対して JScrollBar サブクラスの使用を強制することもできます。水平スクロールバーを作成するために ScrollPaneUI の実装によって使用されます。JScrollBarJScrollBarpublic JScrollBar getHorizontalScrollBar()
horizontalScrollBar プロパティsetHorizontalScrollBar(javax.swing.JScrollBar)public void setHorizontalScrollBar(JScrollBar horizontalScrollBar)
JScrollPane はデフォルトで水平および垂直スクロールバーを作成するので、このメソッドは通常不要です。horizontalScrollBar - 追加される水平スクロールバーcreateHorizontalScrollBar(),
getHorizontalScrollBar()public JScrollBar createVerticalScrollBar()
JScrollPane.ScrollBar を返します。サブクラスはこのメソッドをオーバーライドして ScrollPaneUI の実装に対して JScrollBar サブクラスを強制的に使用することもできます。水平スクロールバーを作成するために ScrollPaneUI の実装によって使用されます。JScrollBarJScrollBarpublic JScrollBar getVerticalScrollBar()
verticalScrollBar プロパティsetVerticalScrollBar(javax.swing.JScrollBar)public void setVerticalScrollBar(JScrollBar verticalScrollBar)
JScrollPane はデフォルトで水平および垂直スクロールバーを作成するので、このメソッドは通常不要です。verticalScrollBar - 追加される新規の垂直スクロールバーcreateVerticalScrollBar(),
getVerticalScrollBar()protected JViewport createViewport()
JViewport を返します。setViewportView、setRowHeaderView、および setColumnHeaderView で (必要に応じて) ビューポートを作成するのに使います。サブクラスは、JViewport のサブクラスを返すようにこのメソッドをオーバーライドすることもできます。JViewportpublic JViewport getViewport()
JViewport を返します。viewport プロパティsetViewport(javax.swing.JViewport)public void setViewport(JViewport viewport)
ほとんどのアプリケーションの場合、ビューポートとスクロール区画へのビューの追加には setViewportView を使ったほうが便利です。
viewport - 使用される新しいビューポート。ビューポートが null の場合、以前のビューポートは削除され、新しいビューポートが null に設定されるcreateViewport(),
getViewport(),
setViewportView(java.awt.Component)public void setViewportView(Component view)
JScrollPane のコンストラクタにビューを提供しないアプリケーションは、このメソッドを使って、次のようにして、スクロール区画に表示されるスクロール可能な子を指定する必要があります。
JScrollPane scrollpane = new JScrollPane(); scrollpane.setViewportView(myBigComponentToScroll);アプリケーションは直接スクロール区画に子を追加すべきではありません。
view - ビューポートに追加するコンポーネントsetViewport(javax.swing.JViewport),
JViewport.setView(java.awt.Component)public JViewport getRowHeader()
rowHeader プロパティsetRowHeader(javax.swing.JViewport)public void setRowHeader(JViewport rowHeader)
null でない場合は、ビュー位置の y 座標とビューポート (存在する場合) を同期させてからスクロール区画に追加します。
ほとんどのアプリケーションの場合、スクロール区画への行ヘッダコンポーネントとビューポートの追加には setRowHeaderView を使ったほうが便利です。
rowHeader - 使用される新しい行ヘッダ。null の場合、以前の行ヘッダは削除され、新しい行ヘッダが null に設定されるgetRowHeader(),
setRowHeaderView(java.awt.Component)public void setRowHeaderView(Component view)
JScrollPane scrollpane = new JScrollPane(); scrollpane.setViewportView(myBigComponentToScroll); scrollpane.setRowHeaderView(myBigComponentsRowHeader);
view - 行ヘッダとして表示するコンポーネントsetRowHeader(javax.swing.JViewport),
JViewport.setView(java.awt.Component)public JViewport getColumnHeader()
columnHeader プロパティsetColumnHeader(javax.swing.JViewport)public void setColumnHeader(JViewport columnHeader)
null でない場合は、ビュー位置の x 座標とビューポート (存在する場合) を同期させてからスクロール区画に追加します。
ほとんどのアプリケーションの場合、スクロール区画への行ヘッダコンポーネントとビューポートの追加には setRowHeaderView を使ったほうが便利です。
getColumnHeader(),
setColumnHeaderView(java.awt.Component)public void setColumnHeaderView(Component view)
JScrollPane scrollpane = new JScrollPane(); scrollpane.setViewportView(myBigComponentToScroll); scrollpane.setColumnHeaderView(myBigComponentsColumnHeader);
view - 列ヘッダとして表示するコンポーネントsetColumnHeader(javax.swing.JViewport),
JViewport.setView(java.awt.Component)public Component getCorner(String key)
key 値を次に示します。
key - 上記の値のどれかkey が無効な場合は null。setCorner(java.lang.String, java.awt.Component)
public void setCorner(String key,
Component corner)
「コーナー」はどの beans プロパティシグニチャーとも一致しませんが、プロパティ名をコーナーキーに設定して PropertyChange イベントが生成されます。
key - コンポーネントを表示するコーナーを識別するcorner - 次のコンポーネントのどれか。IllegalArgumentException - キーが無効な場合public void setComponentOrientation(ComponentOrientation co)
ComponentOrientation 引数で指定されたものに設定します。Component 内の setComponentOrientationco - 次の値のどれか。ComponentOrientationprotected String paramString()
JScrollPane の文字列表現を返します。このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なります。返される文字列は空の場合がありますが、null にはなりません。JComponent 内の paramStringJScrollPane の文字列表現public AccessibleContext getAccessibleContext()
Accessible 内の getAccessibleContextJComponent 内の getAccessibleContext
|
JavaTM 2 Platform Std. Ed. v1.3 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 内部クラス | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Java、Java 2D、JDBC は、米国およびその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2000 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.