JavaTM 2 Platform
Standard Ed. 5.0

javax.swing.text
クラス FlowView

java.lang.Object
  上位を拡張 javax.swing.text.View
      上位を拡張 javax.swing.text.CompositeView
          上位を拡張 javax.swing.text.BoxView
              上位を拡張 javax.swing.text.FlowView
すべての実装されたインタフェース:
SwingConstants
直系の既知のサブクラス:
ParagraphView

public abstract class FlowView
extends BoxView

子を一部制約のある空間へ並べようとするビューです。これは、段落、ページなどを構築するときに使用できます。フローには次の機能があります。

関連項目:
View

入れ子のクラスの概要
static class FlowView.FlowStrategy
          フローの物理的なフォームを維持するための方法です。
 
フィールドの概要
protected  View layoutPool
          このビューが表す要素 (物理的ビューに変換する論理ビュー) の子要素を表すビューです。
protected  int layoutSpan
          フローが作成される際のデフォルトの制約です。
protected  FlowView.FlowStrategy strategy
          フローを更新し続ける動作です。
 
クラス javax.swing.text.View から継承されたフィールド
BadBreakWeight, ExcellentBreakWeight, ForcedBreakWeight, GoodBreakWeight, X_AXIS, Y_AXIS
 
インタフェース javax.swing.SwingConstants から継承されたフィールド
BOTTOM, CENTER, EAST, HORIZONTAL, LEADING, LEFT, NEXT, NORTH, NORTH_EAST, NORTH_WEST, PREVIOUS, RIGHT, SOUTH, SOUTH_EAST, SOUTH_WEST, TOP, TRAILING, VERTICAL, WEST
 
コンストラクタの概要
FlowView(Element elem, int axis)
          指定された要素の FlowView を作成します。
 
メソッドの概要
protected  SizeRequirements calculateMinorAxisRequirements(int axis, SizeRequirements r)
          副軸の必要サイズを計算します。
 void changedUpdate(DocumentEvent changes, Shape a, ViewFactory f)
          このビューが扱う位置で属性が変更されたことをドキュメントから通知します。
protected abstract  View createRow()
          フロー内の子の行を保持するために使用する View を作成します。
 int getFlowAxis()
          それに沿ってビューをフローする軸を取り出します。
 int getFlowSpan(int index)
          指定した子のインデックスがフローする際の制約スパンを取り出します。
 int getFlowStart(int index)
          フロースパンを開始するフロー軸に沿った場所を取り出します。
protected  int getViewIndexAtPosition(int pos)
          モデル内の指定された位置を表す子ビューのインデックスを取り出します。
 void insertUpdate(DocumentEvent changes, Shape a, ViewFactory f)
          このビューが扱う位置でドキュメントに何かが挿入されたことを通知します。
protected  void layout(int width, int height)
          子を配置します。
protected  void loadChildren(ViewFactory f)
          子をすべてロードしてビューを初期化します。
 void removeUpdate(DocumentEvent changes, Shape a, ViewFactory f)
          このビューが扱うドキュメント内の位置から何かが削除されたということを通知します。
 void setParent(View parent)
          ビューの親を設定します。
 
クラス javax.swing.text.BoxView から継承されたメソッド
baselineLayout, baselineRequirements, calculateMajorAxisRequirements, childAllocation, flipEastAndWestAtEnds, forwardUpdate, getAlignment, getAxis, getChildAllocation, getHeight, getMaximumSpan, getMinimumSpan, getOffset, getPreferredSpan, getResizeWeight, getSpan, getViewAtPoint, getWidth, isAfter, isAllocationValid, isBefore, isLayoutValid, layoutChanged, layoutMajorAxis, layoutMinorAxis, modelToView, paint, paintChild, preferenceChanged, replace, setAxis, setSize, viewToModel
 
クラス javax.swing.text.CompositeView から継承されたメソッド
getBottomInset, getInsideAllocation, getLeftInset, getNextEastWestVisualPositionFrom, getNextNorthSouthVisualPositionFrom, getNextVisualPositionFrom, getRightInset, getTopInset, getView, getViewAtPosition, getViewCount, getViewIndex, modelToView, setInsets, setParagraphInsets
 
クラス javax.swing.text.View から継承されたメソッド
append, breakView, createFragment, forwardUpdateToView, getAttributes, getBreakWeight, getContainer, getDocument, getElement, getEndOffset, getGraphics, getParent, getStartOffset, getToolTipText, getViewFactory, getViewIndex, insert, isVisible, modelToView, remove, removeAll, updateChildren, updateLayout, viewToModel
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

layoutSpan

protected int layoutSpan
フローが作成される際のデフォルトの制約です。


layoutPool

protected View layoutPool
このビューが表す要素 (物理的ビューに変換する論理ビュー) の子要素を表すビューです。このビューの直接の子ではありません。行のなかに直接配置されるか、または小さなチャンクに分割して物理的ビューを形成します。


strategy

protected FlowView.FlowStrategy strategy
フローを更新し続ける動作です。デフォルトでは、すべての FlowView インスタンスが共有する単体です (FlowStrategy には状態はありません)。サブクラスは状態を保つ別の方法を作成できます。

コンストラクタの詳細

FlowView

public FlowView(Element elem,
                int axis)
指定された要素の FlowView を作成します。

パラメータ:
elem - このビューが扱う要素
axis - View.X_AXIS または View.Y_AXIS
メソッドの詳細

getFlowAxis

public int getFlowAxis()
それに沿ってビューをフローする軸を取り出します。デフォルトでは、フロー行をタイリングする軸 (デフォルトのフロー行そのものの軸) と直角の軸となります。通常は FlowStrategy が使用します。


getFlowSpan

public int getFlowSpan(int index)
指定した子のインデックスがフローする際の制約スパンを取り出します。フローを更新中に FlowStrategy が呼び出します。制約行に異なった値を提供してフローを形成することもできます。デフォルトでは、フロー軸に沿ったインセットの内側の全スパンが返されます。

パラメータ:
index - 更新中の行のインデックス。0 以上で getViewCount() より小さい値であること
関連項目:
getFlowStart(int)

getFlowStart

public int getFlowStart(int index)
フロースパンを開始するフロー軸に沿った場所を取り出します。フローを更新中に FlowStrategy により呼び出されます。制約行に異なった値を提供してフローを形成することもできます。

パラメータ:
index - 更新中の行のインデックス。0 以上で getViewCount() より小さい値であること
関連項目:
getFlowSpan(int)

createRow

protected abstract View createRow()
フロー内の子の行を保持するために使用する View を作成します。フロー更新中に新しい子が追加されたり、子が削除されると (行が追加されたり削除されると) FlowStrategy により呼び出されます。


loadChildren

protected void loadChildren(ViewFactory f)
子をすべてロードしてビューを初期化します。setParent メソッドによって呼び出されます。このメソッドを再実装すると、どの子も (書式設定のプロセスで作成されるので) 直接ロードしないようにできます。layoutPool 変数が null の場合、LogicalView のインスタンスが生成され、書式設定のプロセスで使われる論理ビューを表します。

オーバーライド:
クラス CompositeView 内の loadChildren
パラメータ:
f - ビューファクトリ
関連項目:
CompositeView.setParent(javax.swing.text.View)

getViewIndexAtPosition

protected int getViewIndexAtPosition(int pos)
モデル内の指定された位置を表す子ビューのインデックスを取り出します。

オーバーライド:
クラス CompositeView 内の getViewIndexAtPosition
パラメータ:
pos - 位置 >= 0
戻り値:
指定された位置を表すビューのインデックス。位置を表すビューがない場合は、-1

layout

protected void layout(int width,
                      int height)
子を配置します。フロー軸に沿ったスパンを変更すると、レイアウトは無効というマークが付けられスーパークラスはボックス軸に沿ったレイアウトを再計算します。FlowStrategy.layout メソッドが呼び出され、適切なフロー行を再構築します。ボックス軸に沿った望ましいサイズによって決まるビューの高さを変更すると、preferenceChanged が呼び出されます。このようにしてスーパークラスの通常のボックスレイアウトが実行されます。

オーバーライド:
クラス BoxView 内の layout
パラメータ:
width - 配置する幅 >= 0。インセット領域内部の幅
height - 配置する高さ >= 0。インセット領域内部の高さ

calculateMinorAxisRequirements

protected SizeRequirements calculateMinorAxisRequirements(int axis,
                                                          SizeRequirements r)
副軸の必要サイズを計算します。これを実装すると、getMinimumSpan、getPreferredSpan、および getMaximumSpan を呼び出して論理ビューに要求を転送できます。

オーバーライド:
クラス BoxView 内の calculateMinorAxisRequirements
パラメータ:
axis - 調査中の軸
r - SizeRequirements オブジェクト。null の場合、1 つ作成される
戻り値:
新しく初期化された SizeRequirements オブジェクト
関連項目:
SizeRequirements

insertUpdate

public void insertUpdate(DocumentEvent changes,
                         Shape a,
                         ViewFactory f)
このビューが扱う位置でドキュメントに何かが挿入されたことを通知します。

オーバーライド:
クラス View 内の insertUpdate
パラメータ:
changes - 関連するドキュメントからの変更情報
a - ビューの現在の割り当て
f - ビューが子を持つ場合に再構築に使用するファクトリ
関連項目:
View.insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

removeUpdate

public void removeUpdate(DocumentEvent changes,
                         Shape a,
                         ViewFactory f)
このビューが扱うドキュメント内の位置から何かが削除されたということを通知します。

オーバーライド:
クラス View 内の removeUpdate
パラメータ:
changes - 関連するドキュメントからの変更情報
a - ビューの現在の割り当て
f - ビューが子を持つ場合に再構築に使用するファクトリ
関連項目:
View.removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

changedUpdate

public void changedUpdate(DocumentEvent changes,
                          Shape a,
                          ViewFactory f)
このビューが扱う位置で属性が変更されたことをドキュメントから通知します。

オーバーライド:
クラス View 内の changedUpdate
パラメータ:
changes - 関連するドキュメントからの変更情報
a - ビューの現在の割り当て
f - ビューが子を持つ場合に再構築に使用するファクトリ
関連項目:
View.changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)

setParent

public void setParent(View parent)
ビューの親を設定します。このビューがまだ子を持たない場合は、loadChildren メソッドの呼び出しとともにスーパークラスの動作を提供するために実装し直されます。子をコンストラクタの中にロードしないようにしてください。これは、親を設定する動作が原因となって、たとえば収容側 Container を取得するために、子が階層をさかのぼって検索しようとするからです。このビューが子を持つ場合は、ビュー階層内のある位置から別の位置へ移動しているので、loadChildren メソッドは呼び出されません。

オーバーライド:
クラス CompositeView 内の setParent
パラメータ:
parent - ビューの親。ない場合は null

JavaTM 2 Platform
Standard Ed. 5.0

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

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