JavaTM Platform
Standard Ed. 6

javax.swing.plaf.basic
クラス BasicScrollPaneUI

java.lang.Object
  上位を拡張 javax.swing.plaf.ComponentUI
      上位を拡張 javax.swing.plaf.ScrollPaneUI
          上位を拡張 javax.swing.plaf.basic.BasicScrollPaneUI
すべての実装されたインタフェース:
ScrollPaneConstants
直系の既知のサブクラス:
MetalScrollPaneUI

public class BasicScrollPaneUI
extends ScrollPaneUI
implements ScrollPaneConstants

ScrollPaneUI のデフォルトの Look & Feel による実装です。


入れ子のクラスの概要
 class BasicScrollPaneUI.HSBChangeListener
          水平スクロールバーのリスナーです。
protected  class BasicScrollPaneUI.MouseWheelHandler
          MouseWheelHandler は、MouseWheelListener インタフェースを実装する内部クラスです。
 class BasicScrollPaneUI.PropertyChangeHandler
           
 class BasicScrollPaneUI.ViewportChangeHandler
          ビューポートイベントのリスナーです。
 class BasicScrollPaneUI.VSBChangeListener
          垂直スクロールバーのリスナーです。
 
フィールドの概要
protected  ChangeListener hsbChangeListener
           
protected  JScrollPane scrollpane
           
protected  PropertyChangeListener spPropertyChangeListener
           
protected  ChangeListener viewportChangeListener
           
protected  ChangeListener vsbChangeListener
           
 
インタフェース 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
 
コンストラクタの概要
BasicScrollPaneUI()
           
 
メソッドの概要
protected  ChangeListener createHSBChangeListener()
           
protected  MouseWheelListener createMouseWheelListener()
          installUI() が JScrollPane に追加する MouseWheelListener のインスタンスを作成します。
protected  PropertyChangeListener createPropertyChangeListener()
          installUI() によって JScrollPane に追加される PropertyChangeListener のインスタンスを生成します。
static ComponentUI createUI(JComponent x)
           
protected  ChangeListener createViewportChangeListener()
           
protected  ChangeListener createVSBChangeListener()
           
 int getBaseline(JComponent c, int width, int height)
          ベースラインを返します。
 Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
          サイズの変化に合わせてコンポーネントのベースラインがどのように変化するかを示す列挙を返します。
 Dimension getMaximumSize(JComponent c)
          Look & Feel に適した、指定されたコンポーネントの最大サイズを返します。
protected  void installDefaults(JScrollPane scrollpane)
           
protected  void installKeyboardActions(JScrollPane c)
           
protected  void installListeners(JScrollPane c)
           
 void installUI(JComponent x)
          Look & Feel に適した、指定されたコンポーネントを構成します。
 void paint(Graphics g, JComponent c)
          Look &Feel に適した、指定されたコンポーネントをペイントします。
protected  void syncScrollPaneWithViewport()
           
protected  void uninstallDefaults(JScrollPane c)
           
protected  void uninstallKeyboardActions(JScrollPane c)
           
protected  void uninstallListeners(JComponent c)
           
 void uninstallUI(JComponent c)
          installUI 時に、指定されたコンポーネントで構成された内容を取り消します。
protected  void updateColumnHeader(PropertyChangeEvent e)
           
protected  void updateRowHeader(PropertyChangeEvent e)
           
protected  void updateScrollBarDisplayPolicy(PropertyChangeEvent e)
           
protected  void updateViewport(PropertyChangeEvent e)
           
 
クラス javax.swing.plaf.ComponentUI から継承されたメソッド
contains, getAccessibleChild, getAccessibleChildrenCount, getMinimumSize, getPreferredSize, update
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

scrollpane

protected JScrollPane scrollpane

vsbChangeListener

protected ChangeListener vsbChangeListener

hsbChangeListener

protected ChangeListener hsbChangeListener

viewportChangeListener

protected ChangeListener viewportChangeListener

spPropertyChangeListener

protected PropertyChangeListener spPropertyChangeListener
コンストラクタの詳細

BasicScrollPaneUI

public BasicScrollPaneUI()
メソッドの詳細

createUI

public static ComponentUI createUI(JComponent x)

paint

public void paint(Graphics g,
                  JComponent c)
クラス ComponentUI の記述:
Look &Feel に適した、指定されたコンポーネントをペイントします。このメソッドは ComponentUI.update メソッドから、指定されたコンポーネントがペイントされるときに呼び出されます。サブクラスは、このメソッドをオーバーライドして、指定された Graphics オブジェクトを使ってコンポーネントの内容を描画する必要があります。

オーバーライド:
クラス ComponentUI 内の paint
パラメータ:
g - ペイント対象の Graphics コンテキスト
c - ペイントされるコンポーネント。 この引数は通常無視されるが、 UI オブジェクトに状態がなく、複数のコンポーネントに共有されている場合は 使用されることがある
関連項目:
ComponentUI.update(java.awt.Graphics, javax.swing.JComponent)

getMaximumSize

public Dimension getMaximumSize(JComponent c)
クラス ComponentUI の記述:
Look & Feel に適した、指定されたコンポーネントの最大サイズを返します。null が返される場合、最大サイズは代わりにコンポーネントのレイアウトマネージャーによって計算されます (これは、特定のレイアウトマネージャーをインストールしてあるコンポーネントの場合に推奨する方法です)。このメソッドのデフォルト実装は getPreferredSize を呼び出して、その値を返します。

オーバーライド:
クラス ComponentUI 内の getMaximumSize
パラメータ:
c - 最大サイズを照会されるコンポーネント。 この引数は通常無視されるが、 UI オブジェクトに状態がなく、複数のコンポーネントに共有されている場合は 使用されることがある
戻り値:
new Dimension(Short.MAX_VALUE, Short.MAX_VALUE)
関連項目:
JComponent.getMaximumSize(), LayoutManager2.maximumLayoutSize(java.awt.Container)

installDefaults

protected void installDefaults(JScrollPane scrollpane)

installListeners

protected void installListeners(JScrollPane c)

installKeyboardActions

protected void installKeyboardActions(JScrollPane c)

installUI

public void installUI(JComponent x)
クラス ComponentUI の記述:
Look & Feel に適した、指定されたコンポーネントを構成します。このメソッドは、ComponentUI インスタンスが、指定されたコンポーネントの UI 委譲としてインストールされているときに呼び出されます。このメソッドは、以下を含む Look & Feel 用のコンポーネントを完全に構成する必要があります。
  1. カラー、フォント、ボーダー、アイコン、不透明さなどすべてのデフォルトプロパティーの値をコンポーネントにインストールする。可能な場合は、クライアントプログラムによって初期化されたプロパティーの値をオーバーライドしてはならない
  2. 必要に応じて、コンポーネントに LayoutManager をインストールする
  3. 必要なサブコンポーネントを、コンポーネントに作成または追加する
  4. イベントリスナーを、コンポーネントに作成またはインストールする
  5. コンポーネントのプロパティーの変更を適切に検出し、応答するために、PropertyChangeListener をコンポーネントに作成またはインストールする
  6. キーボード UI (ニーモニック、トラバーサルなど) を、コンポーネントにインストールする
  7. 適切なインスタンスのデータを初期化する

オーバーライド:
クラス ComponentUI 内の installUI
パラメータ:
x - UI 委譲がインストールされているコンポーネント
関連項目:
ComponentUI.uninstallUI(javax.swing.JComponent), JComponent.setUI(javax.swing.plaf.ComponentUI), JComponent.updateUI()

uninstallDefaults

protected void uninstallDefaults(JScrollPane c)

uninstallListeners

protected void uninstallListeners(JComponent c)

uninstallKeyboardActions

protected void uninstallKeyboardActions(JScrollPane c)

uninstallUI

public void uninstallUI(JComponent c)
クラス ComponentUI の記述:
installUI 時に、指定されたコンポーネントで構成された内容を取り消します。このメソッドは、指定されたコンポーネントの UI 委譲としての UIComponent インスタンスが削除されているときに呼び出されます。このメソッドは、installUI によって実行された構成を元に戻す必要があります。この場合、JComponent インスタンスをクリーンな状態 (余分なリスナーや、Look & Feel 固有のプロパティーオブジェクトが残らないように) にするよう十分注意してください。手順には次のものがあります。
  1. UI として設定されたすべてのボーダーを、コンポーネントから削除する
  2. UI として設定されたすべてのレイアウトマネージャーを、コンポーネントから削除する
  3. UI として追加されたすべてのサブコンポーネントを、コンポーネントから削除する
  4. UI として追加されたすべてのイベント/リスナーを、コンポーネントから削除する
  5. UI としてインストールされたすべてのキーボード UI を、コンポーネントから削除する
  6. GC 用に割り当てられたすべてのインスタンスのデータオブジェクトを無効にする

オーバーライド:
クラス ComponentUI 内の uninstallUI
パラメータ:
c - この UI 委譲を削除するコンポーネント。 この引数は通常無視されるが、 UI オブジェクトに状態がなく、複数のコンポーネントに共有されている場合は 使用されることがある
関連項目:
ComponentUI.installUI(javax.swing.JComponent), JComponent.updateUI()

syncScrollPaneWithViewport

protected void syncScrollPaneWithViewport()

getBaseline

public int getBaseline(JComponent c,
                       int width,
                       int height)
ベースラインを返します。

オーバーライド:
クラス ComponentUI 内の getBaseline
パラメータ:
c - 要求される JComponent ベースライン
width - ベースラインを取得する幅
height - ベースラインを取得する高さ
戻り値:
ベースラインまたは 0 より小さい値 (適切なベースラインが 存在しない)
例外:
NullPointerException - cnull の場合
IllegalArgumentException - 幅または高さが 0 より小さい場合
導入されたバージョン:
1.6
関連項目:
JComponent.getBaseline(int, int)

getBaselineResizeBehavior

public Component.BaselineResizeBehavior getBaselineResizeBehavior(JComponent c)
サイズの変化に合わせてコンポーネントのベースラインがどのように変化するかを示す列挙を返します。

オーバーライド:
クラス ComponentUI 内の getBaselineResizeBehavior
パラメータ:
c - ベースラインのサイズ変更の動作を返す JComponent
戻り値:
コンポーネントのサイズ変更に伴うベースラインの変化を示す 列挙型の値
例外:
NullPointerException - cnull の場合
導入されたバージョン:
1.6
関連項目:
JComponent.getBaseline(int, int)

createViewportChangeListener

protected ChangeListener createViewportChangeListener()

createHSBChangeListener

protected ChangeListener createHSBChangeListener()

createVSBChangeListener

protected ChangeListener createVSBChangeListener()

createMouseWheelListener

protected MouseWheelListener createMouseWheelListener()
installUI() が JScrollPane に追加する MouseWheelListener のインスタンスを作成します。返される MouseWheelListener は、マウスホイール駆動のスクロールの処理に使用されます。

戻り値:
マウスホイール駆動のスクロールを実装する MouseWheelListener
導入されたバージョン:
1.4
関連項目:
installUI(javax.swing.JComponent), BasicScrollPaneUI.MouseWheelHandler

updateScrollBarDisplayPolicy

protected void updateScrollBarDisplayPolicy(PropertyChangeEvent e)

updateViewport

protected void updateViewport(PropertyChangeEvent e)

updateRowHeader

protected void updateRowHeader(PropertyChangeEvent e)

updateColumnHeader

protected void updateColumnHeader(PropertyChangeEvent e)

createPropertyChangeListener

protected PropertyChangeListener createPropertyChangeListener()
installUI() によって JScrollPane に追加される PropertyChangeListener のインスタンスを生成します。サブクラスはこのメソッドをオーバーライドして、独自の PropertyChangeListener を返すことができます。 次に例を示します。
 class MyScrollPaneUI extends BasicScrollPaneUI {
    protected PropertyChangeListener createPropertyChangeListener() {
        return new MyPropertyChangeListener();
    }
    public class MyPropertyChangeListener extends PropertyChangeListener {
        public void propertyChange(PropertyChangeEvent e) {
            if (e.getPropertyName().equals("viewport")) {
                // do some extra work when the viewport changes
            }
            super.propertyChange(e);
        }
    }
 }
 

関連項目:
PropertyChangeListener, installUI(javax.swing.JComponent)

JavaTM Platform
Standard Ed. 6

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

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