JavaTM 2
Platform
Std. Ed. v1.4.0

javax.swing
クラス JViewport

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Container
              |
              +--javax.swing.JComponent
                    |
                    +--javax.swing.JViewport
すべての実装インタフェース:
Accessible, ImageObserver, MenuContainer, Serializable

public class JViewport
extends JComponent
implements Accessible

基本となる情報を見るために使用する「ビューポート (窓)」です。スクロールするときに移動するのがビューポートです。これは、カメラのファインダーを覗くことに似ています。ファインダーを上に向かって動かすと、新しいものが視野の一番上に入り、一番下にあったものが視野から消えます。

デフォルトでは、JViewport は不透明です。これを変更する場合は、setOpaque メソッドを使用します。

注: 描画する際にバッファを必要としない高速スクロールアルゴリズムを実装しました。アルゴリズムの機能は次のとおりです。

  1. ビューと親のビューをみて、JComponents かどうかを調べる。そうでない場合は中止して、ビューポート全体をペイントし直す
  2. ビューポートがほかの上位クラスによって隠されている場合は、中止してビューポート全体をペイントし直す
  3. 表示可能になる領域を計算する。ビューポートとサイズが同じ場合は、中止して領域全体をペイントし直す
  4. 上位クラスの Window グラフィックスを取得して、スクロールした領域の copyArea をペイントし直す
  5. ビューに新しく表示された領域をペイントし直すようメッセージを送る
  6. 次にビューポートにペイントが呼び出されたときに、クリッピング領域がビューポートサイズより小さい場合には、タイマーが開始され全体をペイントし直す
通常、この方法の方が格段に速くできます。バッキングストア法と比較すると、この方法はオフスクリーンバッファを維持するオーバーヘッドと copyArea を 2 回実行することを避けることができます。バッキングストア以外の場合と比較すると、ペイント領域を大幅に削減できます。

この方法は、ビューポートがほかのウィンドウで隠されたり、部分的にオフスクリーンとなると、バッキングストア法よりも速度が遅くなります。ほかのウィンドウでビューポートが隠されると、copyArea はガベージをコピーしシステムがペイントイベントを生成して、新たに出現した領域をペイントする必要があることを知らせます。これを処理する唯一の方法は、ビューポート全体をペイントし直すことです。ただし、バッキングストアの場合に比較してパフォーマンスが低下することがあります。非常にまれではありますが、ビューポートがほかのウィンドウで隠されているときにユーザがスクロールすることがあるため、ほとんどのアプリケーションでこの最適化機能は、ビューポートが隠された場合に有効となります。

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

関連項目:
JScrollPane

入れ子クラスの概要
protected  class JViewport.AccessibleJViewport
          このクラスは JViewport クラス用のユーザ補助機能のサポートを実装しています。
protected  class JViewport.ViewListener
          ビューのリスナーです。
 
クラス javax.swing.JComponent から継承した入れ子クラス
 
クラス java.awt.Container から継承した入れ子クラス
 
クラス java.awt.Component から継承した入れ子クラス
Component.BltBufferStrategy, Component.FlipBufferStrategy
 
フィールドの概要
protected  boolean backingStore
          推奨されていません。 Java 2 プラットフォーム v1.3 以降
static int BACKINGSTORE_SCROLL_MODE
          ビューポートのコンテンツをオフスクリーンイメージに描画します。
protected  Image backingStoreImage
          バッキングストアに使用されるビューイメージです。
static int BLIT_SCROLL_MODE
          graphics.copyArea() を使用してスクロールを実装します。
protected  boolean isViewSizeSet
          ビューポートの寸法が決められている場合に true を返します。
protected  Point lastPaintPosition
          最後にペイントされた viewPosition です。
protected  boolean scrollUnderway
          scrollUnderway フラグは、JList などのコンポーネントで使用されます。
static int SIMPLE_SCROLL_MODE
          このモードはスクロールペインをスクロールするたびに全コンテンツを再描画するという非常に簡単なメソッドを使います。
 
クラス 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
 
コンストラクタの概要
JViewport()
          JViewport を生成します。
 
メソッドの概要
 void addChangeListener(ChangeListener l)
          ビューのサイズ、位置、またはビューポートの長さが変更されるたびに通知されるリストに ChangeListener を追加します。
protected  void addImpl(Component child, Object constraints, int index)
          JViewport の 1 つの軽量な子を設定します。
protected  boolean computeBlit(int dx, int dy, Point blitFrom, Point blitTo, Dimension blitSize, Rectangle blitPaint)
          Blit のパラメータを計算します。
protected  LayoutManager createLayoutManager()
          サブクラサがこのメソッドをオーバーライドすると、コンストラクタで別のレイアウトマネージャ (または null) をインストールできます。
protected  JViewport.ViewListener createViewListener()
          ビューのリスナーを生成します。
protected  void firePropertyChange(String propertyName, Object oldValue, Object newValue)
          リスナーにプロパティの変更を通知します。
protected  void fireStateChanged()
          ビューのサイズ、位置、またはビューポートの長さが変更されると、すべての ChangeListeners に通知します。
 AccessibleContext getAccessibleContext()
          この JViewport に関連した AccessibleContext を返します。
 ChangeListener[] getChangeListeners()
          addChangeListener() によってこの JViewport に追加されたすべての ChangeListener の配列を返します。
 Dimension getExtentSize()
          ビューの可視部分のサイズをビューの座標で返します。
 Insets getInsets()
          JViewport ではボーダがサポートされていないので、インセット (ボーダ) の寸法を (0,0,0,0) として返します。
 Insets getInsets(Insets insets)
          この JViewport のインセット値を格納する Insets オブジェクトを返します。
 int getScrollMode()
          現在のスクロールモードを返します。
 ViewportUI getUI()
          このコンポーネントを描画する L&F オブジェクトを返します。
 String getUIClassID()
          このコンポーネントを描画する L&F クラスの名前を文字列で返します。
 Component getView()
          JViewport の 1 つの子または null を返します。
 Point getViewPosition()
          ビューポートの左上隅に表示されるビューの座標を返します。
 Rectangle getViewRect()
          起点が getViewPosition、サイズが getExtentSize である矩形を返します。
 Dimension getViewSize()
          ビューのサイズが明示的に設定されていない場合は、適切なサイズを返します。
 boolean isBackingStoreEnabled()
          推奨されていません。 Java 2 プラットフォーム v1.3 以降、getScrollMode() に置き換えられました。
 boolean isOptimizedDrawingEnabled()
          JViewport は (JComponent で) このメソッドのデフォルト実装をオーバーライドし、false を返します。
 void paint(Graphics g)
          backingStore が使用可能かどうかに応じて、バッキングストアを介してイメージをペイントするか、または現在表示されている部分だけをペイントし、バッキングストアを使用して残りの部分を「Blit」します。
protected  String paramString()
          この JViewport の文字列表現を返します。
 void remove(Component child)
          Viewport の 1 つの軽量な子を削除します。
 void removeChangeListener(ChangeListener l)
          ビューのサイズ、位置、またはビューポートの長さが変更されるたびに通知されるリストから ChangeListener を削除します。
 void repaint(long tm, int x, int y, int w, int h)
          RepaintManager によって paint が 1 回だけ実行されるように、常に親の座標系で再ペイントします。
 void reshape(int x, int y, int w, int h)
          このビューポートの境界を設定します。
 void scrollRectToVisible(Rectangle contentRect)
          ビュー内の Rectangle が可視になるようにビューをスクロールします。
 void setBackingStoreEnabled(boolean enabled)
          推奨されていません。 Java 2 プラットフォーム v1.3 以降、setScrollMode() に置き換えられました。
 void setBorder(Border border)
          ビューポートは、通常の親または子のクリッピングでその子 (「ビュー」と呼ばれる) を「スクロール」します。
 void setExtentSize(Dimension newExtent)
          ビューの座標を使用してビューの可視部分のサイズを設定します。
 void setScrollMode(int mode)
          ビューポートコンテンツのスクロールメソッドを制御するために使用します。
 void setUI(ViewportUI ui)
          このコンポーネントを描画する L&F オブジェクトを設定します。
 void setView(Component view)
          JViewport の 1 つの軽量な子 (view) を設定します。
 void setViewPosition(Point p)
          ビューポートの左上隅に表示されるビューの座標を設定します。
 void setViewSize(Dimension newSize)
          ビューのサイズを設定します。
 Dimension toViewCoordinates(Dimension size)
          ピクセル座標のサイズをビューの座標に変換します。
 Point toViewCoordinates(Point p)
          ピクセル座標のポイントをビューの座標に変換します。
 void updateUI()
          現在の Look & Feel からある値に UI プロパティをリセットします。
 
クラス javax.swing.JComponent から継承したメソッド
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, revalidate, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
クラス java.awt.Container から継承したメソッド
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
クラス java.awt.Component から継承したメソッド
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

isViewSizeSet

protected boolean isViewSizeSet
ビューポートの寸法が決められている場合に true を返します。デフォルトは false です。


lastPaintPosition

protected Point lastPaintPosition
最後にペイントされた viewPosition です。バッキングストアイメージがどのくらい有効かを知ることができます。


backingStore

protected boolean backingStore
推奨されていません。 Java 2 プラットフォーム v1.3 以降

このビューポートがその内容のオフスクリーンイメージを維持している場合に true を返します。維持されている場合、表示を構築するためにビューオブジェクトにアクセスするのではなく、高速の「ビット Blit」処理を使用してスクロールを実行できます。デフォルトは false です。

関連項目:
setScrollMode(int)

backingStoreImage

protected transient Image backingStoreImage
バッキングストアに使用されるビューイメージです。


scrollUnderway

protected boolean scrollUnderway
scrollUnderway フラグは、JList などのコンポーネントで使用されます。JList で下矢印キーが押され、選択されているセルがリストの最後のセルである場合、scrollpane はオートスクロールします。ここで、選択されていたセルは再ペイントの必要があるため、setViewPosition(Point) の明示的な呼び出しがある場合にだけ、ビューポートが最適化されたペイントをするためにフラグが必要になります。setBounds がほかのルートを介して呼び出される場合、フラグはオフになり、ビューは普通に再ペイントされます。これとは別に、JViewport クラスからこれを削除し、setBackingStoreEnabled を使用して JList にこの場合の制御をさせる方法もあります。デフォルトは false です。


BLIT_SCROLL_MODE

public static final int BLIT_SCROLL_MODE
graphics.copyArea() を使用してスクロールを実装します。この方法がほとんどのアプリケーションにとってもっとも速い方法です。

導入されたバージョン:
1.3
関連項目:
setScrollMode(int), 定数フィールド値

BACKINGSTORE_SCROLL_MODE

public static final int BACKINGSTORE_SCROLL_MODE
ビューポートのコンテンツをオフスクリーンイメージに描画します。この方法は以前は、JTable のデフォルトでした。この方法は、場合によっては「Blit モード」には有用かもしれませんが、かなりの量の余分な RAM が必要となります。

導入されたバージョン:
1.3
関連項目:
setScrollMode(int), 定数フィールド値

SIMPLE_SCROLL_MODE

public static final int SIMPLE_SCROLL_MODE
このモードはスクロールペインをスクロールするたびに全コンテンツを再描画するという非常に簡単なメソッドを使います。これは Swing 1.0 および Swing 1.1 のデフォルト動作でした。たいていの場合、ほかの 2 つのオプション (モード) はどちらも良いパフォーマンスを提供します。

導入されたバージョン:
1.3
関連項目:
setScrollMode(int), 定数フィールド値
コンストラクタの詳細

JViewport

public JViewport()
JViewport を生成します。

メソッドの詳細

getUI

public ViewportUI getUI()
このコンポーネントを描画する L&F オブジェクトを返します。

戻り値:
ViewportUI オブジェクト

setUI

public void setUI(ViewportUI ui)
このコンポーネントを描画する L&F オブジェクトを設定します。

パラメータ:
ui - ViewportUI L&F オブジェクト
関連項目:
UIDefaults.getUI(javax.swing.JComponent)

updateUI

public void updateUI()
現在の Look & Feel からある値に UI プロパティをリセットします。

オーバーライド:
クラス JComponent 内の updateUI
関連項目:
JComponent.updateUI()

getUIClassID

public String getUIClassID()
このコンポーネントを描画する L&F クラスの名前を文字列で返します。

オーバーライド:
クラス JComponent 内の getUIClassID
戻り値:
文字列「ViewportUI」
関連項目:
JComponent.getUIClassID(), UIDefaults.getUI(javax.swing.JComponent)

addImpl

protected void addImpl(Component child,
                       Object constraints,
                       int index)
JViewport の 1 つの軽量な子を設定します。null も指定できます。ビューポート全体を占める子は 1 つだけなので、引数 constraints および index は無視されます。

オーバーライド:
クラス Container 内の addImpl
パラメータ:
child - ビューポートの軽量な child
constraints - 遵守されるべき constraints
index - インデックス
関連項目:
setView(java.awt.Component)

remove

public void remove(Component child)
Viewport の 1 つの軽量な子を削除します。

オーバーライド:
クラス Container 内の remove
パラメータ:
child - 削除されるコンポーネント
関連項目:
setView(java.awt.Component)

scrollRectToVisible

public void scrollRectToVisible(Rectangle contentRect)
ビュー内の Rectangle が可視になるようにビューをスクロールします。

このメソッドは、スクロールの前にビューを検証します。ビューが現在無効な場合、isValid が false を返します。包含関係の階層を作成しているときに過剰な検証を避けるため、このメソッドは、ピアを持たない上位クラスの有無、有効なルートクラスの有無、および Window または Applet のどちらかでない上位クラスの有無については検証しません。

このメソッドは、有効なビューポートの範囲外のスクロールは行いません。contentRect がビューポートより大きい場合、スクロールはビューポート境界の範囲内に限定されます。

オーバーライド:
クラス JComponent 内の scrollRectToVisible
パラメータ:
contentRect - 表示する Rectangle
関連項目:
JComponent.isValidateRoot(), Component.isValid(), Component.getPeer()

setBorder

public final void setBorder(Border border)
ビューポートは、通常の親または子のクリッピングでその子 (「ビュー」と呼ばれる) を「スクロール」します。通常、ビューはスクロールとは反対の方向に移動します。null 以外のボーダ (または 0 以外のインセット) は、サポートされていません。それは、サブクラス化を難しくするほどこのコンポーネントのジオメトリが複雑になるのを防ぐためです。ボーダ付きの JViewport を生成するには、ボーダを持つ JPanel にそれを追加します。

注: bordernull 以外の場合、このメソッドは境界が JViewPort ではサポートされていないため例外をスローします。

オーバーライド:
クラス JComponent 内の setBorder
パラメータ:
border - 設定する Border
例外:
IllegalArgumentException - このメソッドは実装されていない
関連項目:
Border, CompoundBorder

getInsets

public final Insets getInsets()
JViewport ではボーダがサポートされていないので、インセット (ボーダ) の寸法を (0,0,0,0) として返します。

オーバーライド:
クラス JComponent 内の getInsets
戻り値:
大きさゼロ、原点ゼロの Rectange
関連項目:
setBorder(javax.swing.border.Border)

getInsets

public final Insets getInsets(Insets insets)
この JViewport のインセット値を格納する Insets オブジェクトを返します。渡された Insets オブジェクトは再び初期化され、このオブジェクト内のすべての既存の値は上書きされます。

オーバーライド:
クラス JComponent 内の getInsets
パラメータ:
insets - 再利用できる Insets オブジェクト
戻り値:
このビューポートのインセット値
関連項目:
getInsets()

isOptimizedDrawingEnabled

public boolean isOptimizedDrawingEnabled()
JViewport は (JComponent で) このメソッドのデフォルト実装をオーバーライドし、false を返します。その結果、描画装置は JViewport の子に直接メッセージを送るのではなく、Viewportpaint の実装を呼び出します。

オーバーライド:
クラス JComponent 内の isOptimizedDrawingEnabled
戻り値:
false

paint

public void paint(Graphics g)
backingStore が使用可能かどうかに応じて、バッキングストアを介してイメージをペイントするか、または現在表示されている部分だけをペイントし、バッキングストアを使用して残りの部分を「Blit」します。
「Blit」は、PDP-10 BLT (BLock Transfer) 命令のことであり、ビットのブロックをコピーします。

オーバーライド:
クラス JComponent 内の paint
パラメータ:
g - ペイントする Graphics コンテキスト
関連項目:
JComponent.paintComponent(java.awt.Graphics), JComponent.paintBorder(java.awt.Graphics), JComponent.paintChildren(java.awt.Graphics), JComponent.getComponentGraphics(java.awt.Graphics), JComponent.repaint(long, int, int, int, int)

reshape

public void reshape(int x,
                    int y,
                    int w,
                    int h)
このビューポートの境界を設定します。ビューポートの幅または高さが変更された場合は、StateChanged イベントをトリガします。

オーバーライド:
クラス JComponent 内の reshape
パラメータ:
x - 起点の左端
y - 起点の上端
w - ピクセル単位の幅
h - ピクセル単位の高さ
関連項目:
JComponent.reshape(int, int, int, int)

setScrollMode

public void setScrollMode(int mode)
ビューポートコンテンツのスクロールメソッドを制御するために使用します。このモードを変更して最高のパフォーマンスを得られます。

パラメータ:
mode - 次の値のどれか。
  • JViewport.BLIT_SCROLL_MODE
  • JViewport.BACKINGSTORE_SCROLL_MODE
  • JViewport.SIMPLE_SCROLL_MODE
導入されたバージョン:
1.3
関連項目:
BLIT_SCROLL_MODE, BACKINGSTORE_SCROLL_MODE, SIMPLE_SCROLL_MODE

getScrollMode

public int getScrollMode()
現在のスクロールモードを返します。

戻り値:
scrollMode プロパティ
導入されたバージョン:
1.3
関連項目:
setScrollMode(int)

isBackingStoreEnabled

public boolean isBackingStoreEnabled()
推奨されていません。 Java 2 プラットフォーム v1.3 以降、getScrollMode() に置き換えられました。

このビューポートがその内容のオフスクリーンイメージを維持している場合に true を返します。

戻り値:
scrollModeBACKINGSTORE_SCROLL_MODE の場合は true

setBackingStoreEnabled

public void setBackingStoreEnabled(boolean enabled)
推奨されていません。 Java 2 プラットフォーム v1.3 以降、setScrollMode() に置き換えられました。

true の場合、このビューポートはその内容のオフスクリーンイメージを維持します。このイメージは、viewPosition に対する一方向のわずかな変更に対するコストを削減するために使用されます。ビューポート全体を再ペイントするのではなく、Graphics.copyArea を使用してスクロールを実行します。

パラメータ:
enabled - true の場合、オフスクリーンバッキングストアを維持する

getView

public Component getView()
JViewport の 1 つの子または null を返します。

戻り値:
ビューポートの子。存在しない場合は null
関連項目:
setView(java.awt.Component)

setView

public void setView(Component view)
JViewport の 1 つの軽量な子 (view) を設定します。null も指定できます。

パラメータ:
view - ビューポートの新しい軽量な子
関連項目:
getView()

getViewSize

public Dimension getViewSize()
ビューのサイズが明示的に設定されていない場合は、適切なサイズを返します。設定されている場合は、ビューの現在のサイズを返します。ビューがない場合は、0,0 を返します。

戻り値:
ビューのサイズを指定する Dimension オブジェクト

setViewSize

public void setViewSize(Dimension newSize)
ビューのサイズを設定します。状態変更イベントがトリガされます。

パラメータ:
newSize - ビューの新しいサイズを指定する Dimension オブジェクト

getViewPosition

public Point getViewPosition()
ビューポートの左上隅に表示されるビューの座標を返します。ビューがない場合は 0,0 を返します。

戻り値:
左上の座標を示す Point オブジェクト

setViewPosition

public void setViewPosition(Point p)
ビューポートの左上隅に表示されるビューの座標を設定します。ビューがない場合は何も行いません。

パラメータ:
p - 左上の座標を示す Point オブジェクト

getViewRect

public Rectangle getViewRect()
起点が getViewPosition、サイズが getExtentSize である矩形を返します。これは、ビューの座標で示されたビューの可視部分です。

戻り値:
ビューの座標を使用してビューの可視部分を示す Rectangle

computeBlit

protected boolean computeBlit(int dx,
                              int dy,
                              Point blitFrom,
                              Point blitTo,
                              Dimension blitSize,
                              Rectangle blitPaint)
Blit のパラメータを計算します。バッキングストアイメージは現在左上隅に oldLoc を保持していて、これから newLoc にスクロールします。パラメータは、Blit で要求される値を返すために変更されます。

パラメータ:
dx - 水平方向のデルタ
dy - 垂直方向のデルタ
blitFrom - Blit 元の Point
blitTo - Blit 先の Point
blitSize - Blit する領域の Dimension
blitPaint - Blit 先の領域
戻り値:
パラメータが変更され Blit の準備ができた場合は true、そうでない場合は false

getExtentSize

public Dimension getExtentSize()
ビューの可視部分のサイズをビューの座標で返します。

戻り値:
ビューのサイズを指定する Dimension オブジェクト

toViewCoordinates

public Dimension toViewCoordinates(Dimension size)
ピクセル座標のサイズをビューの座標に変換します。「論理座標」をサポートするビューポートのサブクラスは、このメソッドをオーバーライドします。

パラメータ:
size - ピクセル座標を使用する Dimension オブジェクト
戻り値:
ビューの座標に変換された Dimension オブジェクト

toViewCoordinates

public Point toViewCoordinates(Point p)
ピクセル座標のポイントをビューの座標に変換します。「論理座標」をサポートするビューポートのサブクラスは、このメソッドをオーバーライドします。

パラメータ:
p - ピクセル座標を使用する Point オブジェクト
戻り値:
ビューの座標に変換された Point オブジェクト

setExtentSize

public void setExtentSize(Dimension newExtent)
ビューの座標を使用してビューの可視部分のサイズを設定します。

パラメータ:
newExtent - ビューのサイズを指定する Dimension オブジェクト

createViewListener

protected JViewport.ViewListener createViewListener()
ビューのリスナーを生成します。

戻り値:
ViewListener

createLayoutManager

protected LayoutManager createLayoutManager()
サブクラサがこのメソッドをオーバーライドすると、コンストラクタで別のレイアウトマネージャ (または null) をインストールできます。新しい ViewportLayout オブジェクトを返します。

戻り値:
LayoutManager

addChangeListener

public void addChangeListener(ChangeListener l)
ビューのサイズ、位置、またはビューポートの長さが変更されるたびに通知されるリストに ChangeListener を追加します。

パラメータ:
l - 追加する ChangeListener
関連項目:
removeChangeListener(javax.swing.event.ChangeListener), setViewPosition(java.awt.Point), setViewSize(java.awt.Dimension), setExtentSize(java.awt.Dimension)

removeChangeListener

public void removeChangeListener(ChangeListener l)
ビューのサイズ、位置、またはビューポートの長さが変更されるたびに通知されるリストから ChangeListener を削除します。

パラメータ:
l - 削除する ChangeListener
関連項目:
addChangeListener(javax.swing.event.ChangeListener)

getChangeListeners

public ChangeListener[] getChangeListeners()
addChangeListener() によってこの JViewport に追加されたすべての ChangeListener の配列を返します。

戻り値:
追加された ChangeListener のすべて。リスナーが追加されていない場合は、空の配列
導入されたバージョン:
1.4

fireStateChanged

protected void fireStateChanged()
ビューのサイズ、位置、またはビューポートの長さが変更されると、すべての ChangeListeners に通知します。

関連項目:
addChangeListener(javax.swing.event.ChangeListener), removeChangeListener(javax.swing.event.ChangeListener), EventListenerList

repaint

public void repaint(long tm,
                    int x,
                    int y,
                    int w,
                    int h)
RepaintManager によって paint が 1 回だけ実行されるように、常に親の座標系で再ペイントします。

オーバーライド:
クラス JComponent 内の repaint
パラメータ:
tm - 更新までの最大時間 (ミリ秒)
x - x 座標 (左からのピクセル数)
y - y 座標 (上からのピクセル数)
w - ダーティリージョンの幅
h - ダーティリージョンの高さ
関連項目:
Component.update(java.awt.Graphics)

paramString

protected String paramString()
この JViewport の文字列表現を返します。このメソッドはデバッグ専用であり、返される文字列の内容および形式は実装によって異なります。返される文字列は空の場合がありますが、null にはなりません。

オーバーライド:
クラス JComponent 内の paramString
戻り値:
この JViewport の文字列表現

firePropertyChange

protected void firePropertyChange(String propertyName,
                                  Object oldValue,
                                  Object newValue)
リスナーにプロパティの変更を通知します。これをサブクラス化して windowBlit プロパティを更新します。putClientProperty プロパティは final です。

オーバーライド:
クラス JComponent 内の firePropertyChange
パラメータ:
propertyName - プロパティ名が格納されている文字列
oldValue - プロパティの古い値
newValue - プロパティの新しい値
関連項目:
PropertyChangeSupport

getAccessibleContext

public AccessibleContext getAccessibleContext()
この JViewport に関連した AccessibleContext を返します。ビューポートの場合、AccessibleContext は AccessibleJViewport の形式を取ります。必要に応じて新規の AccessibleJViewport インスタンスが作成されます。

定義:
インタフェース Accessible 内の getAccessibleContext
オーバーライド:
クラス JComponent 内の getAccessibleContext
戻り値:
この JViewport の AccessibleContext として機能する AccessibleJViewport

JavaTM 2
Platform
Std. Ed. v1.4.0

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

Java、Java 2D、および JDBC は米国ならびにその他の国における米国 Sun Microsystems, Inc. の商標もしくは登録商標です。
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.