- すべての実装されたインタフェース:
SwingConstants
- 直系の既知のサブクラス:
AsyncBoxView
,ComponentView
,CompositeView
,GlyphView
,IconView
,ImageView
,PlainView
View
クラスは、テキスト・パッケージの非常に重要な部分です。 名前が示すとおり、テキスト・モデルのビュー、またはテキスト・モデルの一部を表します。 名前が示すように、テキスト・モデルのビュー、あるいはテキスト・モデルの一部分を表します。 このクラスはテキスト・コンポーネントの外観を扱います。
デフォルトでは、ビューは軽量です。 ビューには、ビューが状態を保持しないで多くのものを取得することができる親ビューへの参照と、モデル(Element
)の一部分への参照が含まれています。 ビューは、典型的なだけで便利なマッピングである、モデルの要素を正確に表す必要はありません。 バージョン1.1および1.2の両方で機能するAPIは、移行によって生じる問題を最小化するのに便利です。 ビューがバラバラにされた場合の通常のフォーマットの結果です。 モデルが変更され、ビューがそのモデルを反映するように変更されなければならないとき、要素との実質的な関係の利便性を、ビューを生成するファクトリの構築によって簡単にしたり、ビュー各部分の追跡を継続することで簡単にします。 つまり、単純なビューはElementを直接表しますが、複雑なビューは違います。
ビューには次の機能があります。
- レイアウトへの関与
-
組み合わされた
Component
のビューには、doLayout
やsetSize
と同様のsetSize
メソッドがあります。Component
のビューには、1つの軸と、変更が識別できることを要求する子だけを無効にできる場合を除き、invalidate
と同様のpreferenceChanged
メソッドがあります。Viewはサイズを示します。最小スパン、推奨スパン、最大スパンの3つの値で表示されます。 ビューのレイアウトは各軸に依存しない方法で行われます。 View実装を正しく機能させるには、最小スパン<=推奨スパン、または推奨スパン<=最大スパンとなります。
レイアウトに関するメソッドの最小設定は次のとおりです。
何回も呼び出されるためには
setSize
メソッドを作成します(サイズが変更されない場合でも呼び出されることがあります)。setSize
メソッドは通常、最新のレイアウトを必要とする操作をView上で試みる前に、Viewのレイアウトが完了するように呼び出されます。 ビューのサイズは必ず、そのビューで指定されたスパンの最小スパンから最大スパンの範囲内の値に設定されます。 さらに、ビューで親に必要なレイアウト値に変更した場合、このビューは必ずその親のpreferenceChanged
メソッドを呼出し親に引受けを要求します。preferenceChanged
が送られるまで、その親Viewは変更を認識するように要求されていません。 このため、親Viewの実装は必要に応じて子の要求をキャッシュできます。 呼出し順序は次のようになります。ビューが子供を持つ場合、正確な呼出し順序は親ビューのレイアウト機能にかかっています。 どの子に何を提供するのか、または子を1度に1つ繰返し更新するのかを指定する前に、ビューは子の推奨設定を収集することがあります。
- モデルの一部を描画する
-
ペイント・メソッドで描画しますが、コンポーネント・ペイント・メソッドとよく似ています。 ビューは、かなり大きなツリーを生成する可能性があると考えられます。
View
の描画に対して次のセマンティックスが用意されています。- ビューは、ペイント時に親からの割り当てを取得する。割当て領域が処理対象とされている領域と異なる場合、レイアウトの再実行の準備が必要。
- 座標体系は、
getContainer
メソッドで返されたComponent
などの収容側Component
と同じ。 すなわち、親が明示的に座標体系を変更していない限り、子ビューは親ビューと同じ座標体系に存在する。 自分を再描画するようにスケジュールするために、ビューは収容側Component
の再描画を呼び出すことができる。 - デフォルトは子をクリップしないことに設定。 ビューがクリッピングを本当に必要とする場合に限り、ビューをクリップ可能にするとさらに効果的。
- 指定された
Graphics
オブジェクトはどんな方法でも初期化されない。 ビューが必要な設定をしなければならない。 - 本来
View
は透明。 ビューがその割当て全体を描画する場合もあるが、通常は描画しない。View
実装のツリーを下位へたどってレンダリングを実行する。 各View
はその子のレンダリングを扱う。 この動作はスレッドに対する安全性に依存している。 ビューの実装にスレッドに対する安全性を考慮する必要がない場合は、同時に使用できるほかのビューの実装が、スレッドに対する安全性を保証するツリー・トラバーサルに依存する。 - モデルに関連するビューの順序は実装によって異なる。 子ビューは通常、モデル内で発生する順序と同じ順序で配置されるが、視覚的にまったく異なる順序で配置されることもある。 子が重複する場合、Viewの実装には重複した子に関連したZ-Orderが用意されている場合がある。
レンダリングのためのメソッドは次のとおりです。
- モデルの座標体系とビューの座標体系との間の変換
-
ビュー・オブジェクトはファクトリから生成されており、必ずしも特定のパターンに依存することはないので、モデルの空間表現を適切に位置づける変換を実行できなければいけません。 これは次のメソッドが実行します。
変換しようとする前にレイアウトを有効にする必要があります。 この変換は有効ではないため、変更が
DocumentEvent
経由でモデルから送られる間は変換しないでください。 - モデルからの変更に応答する
-
ビュー全体がいくつもの分割部分で表現されていると(ビューを変更し、最小限の新規コードの書込みをする場合、それが最適な状態ですが)、莫大な数の
DocumentListener
を保持するのは不可能です。 各ビューがモデルに待機するとすれば、実際にはほとんどのビューは指定された時間に送られる変更に関われません。 モデルにはビューに関する情報がないので、変更情報の伝送をフィルタする方法がありません。 代わりに、ビュー階層自身が変更情報の送信を行います。 ビュー階層のどのレベルでも、詳細な変更情報を効率よく分配するために、ビューの子に関する情報は十分にあります。 したがって、変更はビュー階層のルートから送られます。 これは次のメソッドが実行します。
-
フィールドのサマリー
修飾子と型フィールド説明static final int
フォーマット目的とするには不完全な分割の機会であるビューを示すウエイトです。static final int
分割をサポートしているビューを示すウエイトで、分割するのに適した位置であることを表わしています。static final int
分割をサポートしているビューを示すウエイトで、子を分割することで子をフォーマットするビューに配置されている場合に、ビューを正しく表わすには分割しなければいけません。static final int
分割をサポートしているビューを示すウエイトですが、もっと良い機会が存在する可能性があります。static final int
フォーマット/分割処理の軸です。static final int
フォーマット/分割処理の軸です。インタフェース 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
-
コンストラクタのサマリー
-
メソッドのサマリー
修飾子と型メソッド説明void
1つの子ビューを追加します。breakView
(int axis, int offset, float pos, float len) 指定された軸でこのビューの分割を試みます。void
changedUpdate
(DocumentEvent e, Shape a, ViewFactory f) このビューが扱う位置で属性が変更されたことをドキュメントから通知します。createFragment
(int p0, int p1) 要素の一部分を表すビューを作成します。protected void
指定されたDocumentEvent
を、モデルへの変更について通知する必要のある子ビューに転送します。protected void
forwardUpdateToView
(View v, DocumentEvent e, Shape a, ViewFactory f) 指定された子ビューにDocumentEvent
を転送します。float
getAlignment
(int axis) 軸に沿ったこのビューの望ましいレイアウトを決定します。描画するときに使用する属性を取得します。int
getBreakWeight
(int axis, float pos, float len) このビューで分割のウエイトがどのくらい適切かを示します。getChildAllocation
(int index, Shape a) 指定された子ビューの割り当てを取得します。ビューを収容するコンテナを取得します。ビューに関連したモデルを取り出します。このビューがマッピングされる対象の構造部分を取り出します。int
このビューが扱うモデルの一部を取り出します。レンダリングのためのGraphics
を取得します。float
getMaximumSpan
(int axis) このビューの最大スパンを軸に沿って指定します。float
getMinimumSpan
(int axis) このビューの最小スパンを軸に沿って指定します。int
getNextVisualPositionFrom
(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet) キャレットが配置される可能性のある、視覚的に表された次のモデル位置を決定する手段を提供します。ビューの親を返します。abstract float
getPreferredSpan
(int axis) このビューに適切なスパンを軸に沿って指定します。int
getResizeWeight
(int axis) 指定された軸に沿ってビューのサイズを変更できるかどうかを指定します。int
このビューが扱うモデルの一部を取り出します。getToolTipText
(float x, float y, Shape allocation) 指定された位置にあるツールヒントのテキストを返します。getView
(int n) n番目の子ビューを取得します。int
このビュー内のビューの数を返します。ビュー階層を供給しているViewFactory
の実装を取り出します。int
getViewIndex
(float x, float y, Shape allocation) ビュー内の指定された位置を表す子ビュー・インデックスを返します。int
getViewIndex
(int pos, Position.Bias b) モデル内の指定された位置を表す子ビューのインデックスを返します。void
1つの子ビューを挿入します。void
insertUpdate
(DocumentEvent e, Shape a, ViewFactory f) このビューが扱う位置でドキュメントに何かが挿入されたことを通知します。boolean
ビューが可視かどうかを示すboolean型の値を返します。modelToView
(int pos, Shape a) 非推奨。abstract Shape
modelToView
(int pos, Shape a, Position.Bias b) 指定した文字について、ドキュメント・モデル座標空間からビュー座標空間へのマッピングを提供します。modelToView
(int p0, Position.Bias b0, int p1, Position.Bias b1, Shape a) 指定した範囲について、ドキュメント・モデル座標空間からビュー座標空間へのマッピングを提供します。abstract void
指定されたレンダリング表面およびその表面上の領域を使ってレンダリングします。void
preferenceChanged
(View child, boolean width, boolean height) 子ビューは親でこのメソッドを呼び出し、設定が変更されたこと、および再度レイアウトが考慮されなければならないことを示すことができます。void
remove
(int i) 指定された位置にある子を1つ削除します。void
すべての子を削除します。void
removeUpdate
(DocumentEvent e, Shape a, ViewFactory f) このビューが扱うドキュメント内の位置から何かが削除されたということを通知します。void
子ビューを置換します。void
このビューの親ビューを確立します。void
setSize
(float width, float height) ビューのサイズを設定します。protected boolean
モデルが変更されたという通知を受け取ると、子ビューを更新します。このビューが扱う要素の変更記録があります。protected void
モデルから変更の通知を受け取った場合に、レイアウトを更新します。int
viewToModel
(float x, float y, Shape a) 非推奨。abstract int
viewToModel
(float x, float y, Shape a, Position.Bias[] biasReturn) ビューの座標空間からモデルの論理座標空間へのマッピングを提供します。
-
フィールド詳細
-
BadBreakWeight
public static final int BadBreakWeightフォーマット目的とするには不完全な分割の機会であるビューを示すウエイトです。 この値は、ビューが断片化をサポートするように記述されていないため、ビューをフラグメントに分割してはならないことを示します。 -
GoodBreakWeight
public static final int GoodBreakWeight分割をサポートしているビューを示すウエイトですが、もっと良い機会が存在する可能性があります。 -
ExcellentBreakWeight
public static final int ExcellentBreakWeight分割をサポートしているビューを示すウエイトで、分割するのに適した位置であることを表わしています。 -
ForcedBreakWeight
public static final int ForcedBreakWeight分割をサポートしているビューを示すウエイトで、子を分割することで子をフォーマットするビューに配置されている場合に、ビューを正しく表わすには分割しなければいけません。 -
X_AXIS
public static final int X_AXISフォーマット/分割処理の軸です。- 関連項目:
-
Y_AXIS
public static final int Y_AXISフォーマット/分割処理の軸です。- 関連項目:
-
-
コンストラクタの詳細
-
View
public View(Element elem) 新しいView
オブジェクトを作成します。- パラメータ:
elem
- 表現対象のElement
-
-
メソッドの詳細
-
getParent
public View getParent()ビューの親を返します。- 戻り値:
- 親、または指定されていない場合は
null
-
isVisible
public boolean isVisible()ビューが可視かどうかを示すboolean型の値を返します。 デフォルトではすべてのビューが可視です。- 戻り値:
- 常にtrueを返す
-
getPreferredSpan
public abstract float getPreferredSpan(int axis) このビューに適切なスパンを軸に沿って指定します。- パラメータ:
axis
-View.X_AXIS
またはView.Y_AXIS
- 戻り値:
- ビューの描画先のスパン。 通常、ビューは返されたスパン内に描画されるよう求められるが、その保証はない。 親はビューのサイズの変更や分割を行う可能性がある
-
getMinimumSpan
public float getMinimumSpan(int axis) このビューの最小スパンを軸に沿って指定します。- パラメータ:
axis
-View.X_AXIS
またはView.Y_AXIS
- 戻り値:
- ビューを描画できる最小スパン
- 関連項目:
-
getMaximumSpan
public float getMaximumSpan(int axis) このビューの最大スパンを軸に沿って指定します。- パラメータ:
axis
-View.X_AXIS
またはView.Y_AXIS
- 戻り値:
- ビューを描画できる最大スパン
- 関連項目:
-
preferenceChanged
public void preferenceChanged(View child, boolean width, boolean height) 子ビューは親でこのメソッドを呼び出し、設定が変更されたこと、および再度レイアウトが考慮されなければならないことを示すことができます。 デフォルトでは、このメソッドは単純に次の親に向かって通知します。 ルート・ビューは、関連したテキスト・コンポーネントでrevalidate
を呼び出します。- パラメータ:
child
- 子ビューwidth
- 幅の設定が変更されている場合はtrueheight
- 高さの設定が変更されている場合はtrue- 関連項目:
-
getAlignment
public float getAlignment(int axis) 軸に沿ったこのビューの望ましいレイアウトを決定します。 望ましいレイアウトが返されます。 値の範囲は0.0から1.0で、0は起点への配置、1.0は起点から最大に離れた配置を表します。 0.5は、ビューの中央への配置になります。- パラメータ:
axis
-View.X_AXIS
またはView.Y_AXIS
- 戻り値:
- 値0.5
-
paint
指定されたレンダリング表面およびその表面上の領域を使ってレンダリングします。 ビューは、指定された割当てにそれ自体を描画するために、レイアウトを行なったり、子ビューを作成したりする必要がある場合があります。- パラメータ:
g
- 使用する描画表面allocation
- 描画するために割り当てられた領域
-
setParent
public void setParent(View parent) このビューの親ビューを確立します。 親ビューが正しく機能している場合、このメソッドはほかのメソッドよりも必ず前に呼び出されます。 また、このメソッドは階層からビューが削除されたことを示すためにも呼び出されるので、最後に呼び出されるメソッドでもあります。 このメソッドが呼び出されて親がnullに設定されるときは、各子に対しても同じことがこのメソッドによって行われ、ビュー・ツリーから切断されたという通知が伝達されます。 このメソッドを再実装する場合は、super.setParent()
を呼び出す必要があります。- パラメータ:
parent
- 新しい親。ビューが親から削除される場合はnull
-
getViewCount
public int getViewCount()このビュー内のビューの数を返します。 デフォルトでは複合ビューにならないので、このメソッドは0を返します。- 戻り値:
- ビューの数>= 0
- 関連項目:
-
getView
public View getView(int n) n番目の子ビューを取得します。 デフォルトでは子がないので、このメソッドはnull
を返します。- パラメータ:
n
- 取得するビューの番号。0以上でgetViewCount()より小さい値- 戻り値:
- ビュー
-
removeAll
public void removeAll()すべての子を削除します。replace
の簡易呼出しです。- 導入されたバージョン:
- 1.3
-
remove
public void remove(int i) 指定された位置にある子を1つ削除します。replace
の簡易呼出しです。- パラメータ:
i
- 位置- 導入されたバージョン:
- 1.3
-
insert
public void insert(int offs, View v) 1つの子ビューを挿入します。replace
の簡易呼出しです。- パラメータ:
offs
- ビューを挿入する位置のオフセット>= 0v
- ビュー- 導入されたバージョン:
- 1.3
- 関連項目:
-
append
public void append(View v) 1つの子ビューを追加します。replace
の簡易呼出しです。- パラメータ:
v
- ビュー- 導入されたバージョン:
- 1.3
- 関連項目:
-
replace
public void replace(int offset, int length, View[] views) 子ビューを置換します。 削除するビューがない場合、これは挿入として動作します。 追加するビューがない場合、これは削除として動作します。 削除されるビューはnull
に設定された親を持ち、削除されるビューの内部を参照しているので、ガベージ・コレクトが可能です。 デフォルトではビューに子がないので、実装しても何も行われません。- パラメータ:
offset
- 新規ビューを挿入するための、子ビューの開始インデックス。 この値は0以上で、getViewCount以下であるべきですlength
- 削除する既存の子ビューの数。この値は0以上で、(getViewCount() - offset)以下であるべきです。views
- 追加する子ビュー。 追加される子がない場合は、null
も可(削除に便利)。- 導入されたバージョン:
- 1.3
-
getViewIndex
public int getViewIndex(int pos, Position.Bias b) モデル内の指定された位置を表す子ビューのインデックスを返します。 デフォルトでは、ビューに子がないので、あらゆる位置に対して有効な子インデックスがないことを表すには、-1を返すように実装されています。- パラメータ:
pos
- 位置>= 0b
- バイアス- 戻り値:
- 指定された位置を表すビューのインデックス。その位置を表すビューがない場合は -1
- 導入されたバージョン:
- 1.3
-
getChildAllocation
指定された子ビューの割り当てを取得します。 このメソッドを使用すると、ビューがそれらの位置を格納していることを仮定することなく、さまざまなビューがどこにあるかを知ることができます。 デフォルトでは子ビューを持たないので、このメソッドはnull
を返します。- パラメータ:
index
- 子のインデックス、0以上でgetViewCount()
未満a
- このビューに対する割当て- 戻り値:
- 子に対する割当て
-
getNextVisualPositionFrom
public int getNextVisualPositionFrom(int pos, Position.Bias b, Shape a, int direction, Position.Bias[] biasRet) throws BadLocationException キャレットが配置される可能性のある、視覚的に表された次のモデル位置を決定する手段を提供します。 ビューによっては、可視ではないか、モデル内と同じ順序でないか、またはモデル内の一部の位置へのアクセスを許可しない場合があります。 このメソッドを使用すると、0以上の範囲内で変換する位置を指定できます。 値が-1の場合は、位置が自動的に計算されます。 値が-1よりも小さい場合は、BadLocationException
がスローされます。- パラメータ:
pos
- 変換対象の位置b
- バイアスa
- 割り当てられた描画領域direction
- 現在位置からの方向。これは、キーボードに通常存在する矢印キーと見なすことができ、 これは、次の値のいずれかになります。- SwingConstants.WEST
- SwingConstants.EAST
- SwingConstants.NORTH
- SwingConstants.SOUTH
biasRet
- 戻りバイアス- 戻り値:
- 次の可視の位置をもっともよく表すモデル内の位置
- 例外:
BadLocationException
- 指定された位置がドキュメント内の有効な位置でない場合IllegalArgumentException
-direction
が前述の正当な値のどれでもない場合
-
modelToView
public abstract Shape modelToView(int pos, Shape a, Position.Bias b) throws BadLocationException 指定した文字について、ドキュメント・モデル座標空間からビュー座標空間へのマッピングを提供します。- パラメータ:
pos
- 望ましい文字の位置(>= 0)a
- ビューの領域。要求された文字が含まれるb
- 位置が2つのビューの境界である場合に、オフセットによって表される直前の文字または次の文字へのバイアス。b
の値は次のどれかになる。-
Position.Bias.Forward
-
Position.Bias.Backward
-
- 戻り値:
- ビュー座標空間内の、指定した位置にある文字のバウンディング・ボックス
- 例外:
BadLocationException
- 指定された位置が、関連するドキュメント内の有効な位置を表さない場合IllegalArgumentException
-b
が上記の正当なPosition.Bias
値のどれでもない場合- 関連項目:
-
modelToView
public Shape modelToView(int p0, Position.Bias b0, int p1, Position.Bias b1, Shape a) throws BadLocationException 指定した範囲について、ドキュメント・モデル座標空間からビュー座標空間へのマッピングを提供します。 指定した範囲は、最初の文字の位置と最後の文字の位置との和集合として作成されます。- パラメータ:
p0
- 最初の文字の位置>= 0b0
- 位置が2つのビューの境界である場合に、オフセットによって表される直前の文字または次の文字への最初の文字のバイアス。b0
の値は次のどれかになる。-
Position.Bias.Forward
-
Position.Bias.Backward
-
p1
- 最後の文字の位置(>= 0)b1
- 2番目の文字位置におけるバイアス。上記の適正な値のどれかa
- ビューの領域。要求された範囲が含まれる- 戻り値:
- 最初の文字の位置と最後の文字の位置とで指定される範囲の和集合であるバウンディング・ボックス
- 例外:
BadLocationException
- 指定された位置が、関連するドキュメント内の有効な位置を示さない場合IllegalArgumentException
-b0
またはb1
が上記の正当なPosition.Bias
値のどれでもない場合- 関連項目:
-
viewToModel
public abstract int viewToModel(float x, float y, Shape a, Position.Bias[] biasReturn) ビューの座標空間からモデルの論理座標空間へのマッピングを提供します。biasReturn
引数は、指定された点がモデル内の次の文字と近いのか、あるいはモデル内の前の文字と近いのかを示します。- パラメータ:
x
- X座標>= 0y
- Y座標>= 0a
- 割り当てられた描画領域biasReturn
- 戻りバイアス- 戻り値:
- 指定されたビュー内の点をもっとも適切に表現するモデル内の位置。0以上。
biasReturn
引数は、指定された点がモデル内の次の文字と近いのか、あるいはモデル内の前の文字と近いのかを示します。
-
insertUpdate
public void insertUpdate(DocumentEvent e, Shape a, ViewFactory f) このビューが扱う位置でドキュメントに何かが挿入されたことを通知します。 サブクラスへの負荷を軽くするため、この機能は、サブクラスが再実装できる次の呼出しに拡張されます。- このビューが扱う要素に対して変更があった場合、
updateChildren
が呼び出される。 このビューが、子の要素を示す子ビューを持つ場合、子ビューが正しくモデルを表すように、このメソッドは必要なことをすべて実行する。 - DocumentEventを適切な子ビューに転送するために、
forwardUpdate
が呼び出される。 - ビューのレイアウトを修復、再スケジュール、または何も処理しないための機会をビューに与えるために、
updateLayout
が呼び出される。
- パラメータ:
e
- 関連するドキュメントからの変更情報a
- ビューの現在の割当てf
- ビューが子を持つ場合に再構築に使用するファクトリ- 関連項目:
- このビューが扱う要素に対して変更があった場合、
-
removeUpdate
public void removeUpdate(DocumentEvent e, Shape a, ViewFactory f) このビューが扱うドキュメント内の位置から何かが削除されたということを通知します。 サブクラスへの負荷を軽くするため、この機能は、サブクラスが再実装できる次の呼出しに拡張されます。- このビューが扱う要素に対して変更があった場合、
updateChildren
が呼び出される。 このビューが、子の要素を示す子ビューを持つ場合、子ビューが正しくモデルを表すように、このメソッドは必要なことをすべて実行する。 - DocumentEventを適切な子ビューに転送するために、
forwardUpdate
が呼び出される。 - ビューのレイアウトを修復、再スケジュール、または何も処理しないための機会をビューに与えるために、
updateLayout
が呼び出される。
- パラメータ:
e
- 関連するドキュメントからの変更情報a
- ビューの現在の割当てf
- ビューが子を持つ場合に再構築に使用するファクトリ- 関連項目:
- このビューが扱う要素に対して変更があった場合、
-
changedUpdate
public void changedUpdate(DocumentEvent e, Shape a, ViewFactory f) このビューが扱う位置で属性が変更されたことをドキュメントから通知します。 サブクラスへの負荷を軽くするため、この機能は、サブクラスが再実装できる次の呼出しに拡張されます。- このビューが扱う要素に対して変更があった場合、
updateChildren
が呼び出される。 このビューが、子の要素を示す子ビューを持つ場合、子ビューが正しくモデルを表すように、このメソッドは必要なことをすべて実行する。 - DocumentEventを適切な子ビューに転送するために、
forwardUpdate
が呼び出される。 - ビューのレイアウトを修復、再スケジュール、または何も処理しないための機会をビューに与えるために、
updateLayout
が呼び出される。
- パラメータ:
e
- 関連するドキュメントからの変更情報a
- ビューの現在の割当てf
- ビューが子を持つ場合に再構築に使用するファクトリ- 関連項目:
- このビューが扱う要素に対して変更があった場合、
-
getDocument
public Document getDocument()ビューに関連したモデルを取り出します。- 戻り値:
- ビュー・モデル。ない場合は
null
- 関連項目:
-
getStartOffset
public int getStartOffset()このビューが扱うモデルの一部を取り出します。- 戻り値:
- モデル内の開始オフセット>= 0
- 関連項目:
-
getEndOffset
public int getEndOffset()このビューが扱うモデルの一部を取り出します。- 戻り値:
- モデル内の終了オフセット>= 0
- 関連項目:
-
getElement
public Element getElement()このビューがマッピングされる対象の構造部分を取り出します。 ビューは、要素の全体を扱わない場合があります。- 戻り値:
- 件名
- 関連項目:
-
getGraphics
public Graphics getGraphics()レンダリングのためのGraphics
を取得します。 フォント文字を指定するのに使用されますが、出力ビューの場合はコンポーネント・ビューの場合と異なります。- 戻り値:
- レンダリング用の
Graphics
オブジェクト - 導入されたバージョン:
- 1.3
-
getAttributes
public AttributeSet getAttributes()描画するときに使用する属性を取得します。 デフォルトでは、このメソッドは単純に関連する要素の属性を返します。 ビュー固有の属性を追加できるようにするため、またはビューがサブクラスによるビュー固有の属性の変換を持てるようにするために属性へのアクセスを取得するには、要素を直接使用するのではなく、このメソッドを使用しなければいけません。 各ビューは、描画またはレイアウトの目的のためにどの属性を認識するのかを記述しなければならず、またこのメソッドによって返されるAttributeSet
を介してそれらに常にアクセスしなければいけません。- 戻り値:
- レンダリング時に使用する属性
-
breakView
public View breakView(int axis, int offset, float pos, float len) 指定された軸でこのビューの分割を試みます。 このメソッドは、子のフォーマットを目的とするビューによって呼び出されます。 たとえば、段落のビューは通常その子を行に配置しようとし、テキストのチャンクを表すビューは小さく分割されることがあります。このメソッドはビュー自体を返すために実装され、それは分割できないデフォルトの動作を表します。 ビューが分割をサポートする場合、返されるビューの開始オフセットは指定されたオフセットでなければならず、終了オフセットは分割されるビューの終了オフセット以下であるべきです。
- パラメータ:
axis
-View.X_AXIS
またはView.Y_AXIS
offset
- 分割されたフラグメントが占めるドキュメント・モデル内の位置。0以上。 これは返されるフラグメントの開始オフセットになるpos
- 分割されたビューが占める軸に沿った位置>= 0。 これはタブの計算などで便利な場合があるlen
- 分割が必要な軸に沿った距離(0以上)- 戻り値:
- ビューが分割できる場合は、指定されたスパンを表すビューのフラグメント。 ビューが分割動作をサポートしていない場合は、ビュー自体が返される。
- 関連項目:
-
createFragment
public View createFragment(int p0, int p1) 要素の一部分を表すビューを作成します。 フォーマットの操作中に、ビューの各フラグメントを測定するために使います。 ビューがフラグメント化をサポートしない場合(これがデフォルト)は、ビュー自身が返されます。- パラメータ:
p0
- 開始オフセット。0以上。 要素の開始オフセットに等しいか、それより大きい値で、要素の終了オフセットより小さい値にする。p1
- 終了オフセット。p0より大きい。 要素の開始オフセットより大きく、要素の終了オフセットに等しいか、それより小さい値にする。- 戻り値:
- ビューのフラグメント。ビューがフラグメントへの分割をサポートしない場合はビュー自体
- 関連項目:
-
getBreakWeight
public int getBreakWeight(int axis, float pos, float len) このビューで分割のウエイトがどのくらい適切かを示します。 このメソッドは、フォーマットの過程でbreakView
を呼び出すもっとも適切なビューを判断するために使用できます。 たとえば、余白を含むテキストを表すビューは、余白を含まないビューよりも適切です。 ウエイトが高いほど、分割にはより適切です。 値がBadBreakWeight
以下の場合は、分割対象とはなりません。 値がForcedBreakWeight
以上の場合は、分割されます。長さがビューの長さより長い場合(ビュー全体がフラグメントを表す)を除いて
BadBreakWeight
を返すデフォルトの動作を提供するために実装されます。 ビューが分割動作をサポートするように記述されていないかぎり、ビューを分割しようとするのは適切ではありません。 分割をサポートするビューにはLabelView
などがあります。 分割ウエイトを使用するビューにはParagraphView
などがあります。- パラメータ:
axis
-View.X_AXIS
またはView.Y_AXIS
pos
- 分割されたビューの開始の可能性のある位置。0以上。 これは、タブ位置の計算に役立つことがありますlen
- 分割が必要なposからの相対的な長さを指定する。0以上- 戻り値:
- ウエイト。ForcedBreakWeightとBadBreakWeightの間の値
- 関連項目:
-
getResizeWeight
public int getResizeWeight(int axis) 指定された軸に沿ってビューのサイズを変更できるかどうかを指定します。 値が0以下の場合はサイズ変更できません。- パラメータ:
axis
-View.X_AXIS
またはView.Y_AXIS
- 戻り値:
- ウエイト
-
setSize
public void setSize(float width, float height) ビューのサイズを設定します。 レイアウトの必要がある場合は、指定した軸に沿ったビューのレイアウトを表示します。- パラメータ:
width
- 幅>= 0height
- 高さ>= 0
-
getContainer
public Container getContainer()ビューを収容するコンテナを取得します。 これは、再描画のスケジューリング、収容側コンポーネント・フォントの検索などに便利です。デフォルトの実装では、照会を親ビューに転送します。- 戻り値:
- コンテナ。ない場合は
null
-
getViewFactory
public ViewFactory getViewFactory()ビュー階層を供給しているViewFactory
の実装を取り出します。 ビューには通常、もっともファクトリを必要とするときにモデルから更新するための引数として渡されますが、このメソッドはそれ以外のときに実装を提供するために機能します。- 戻り値:
- ファクトリ。ない場合は
null
-
getToolTipText
指定された位置にあるツールヒントのテキストを返します。 デフォルトの実装では、渡された位置によって特定される子ビューから値を返します。- パラメータ:
x
- x座標y
- y座標allocation
- ビューの現在の割当て。- 戻り値:
- 指定されたロケーションのツールチップ・テキスト
- 導入されたバージョン:
- 1.4
- 関連項目:
-
getViewIndex
public int getViewIndex(float x, float y, Shape allocation) ビュー内の指定された位置を表す子ビュー・インデックスを返します。 これは、すべての子について繰り返され、座標(x
,y
)を含む境界を持つ最初の子を返します。- パラメータ:
x
- x座標y
- y座標allocation
- ビューの現在の割当て。- 戻り値:
- 指定された位置を表すビューのインデックス。その位置を表すビューがない場合は -1
- 導入されたバージョン:
- 1.4
-
updateChildren
protected boolean updateChildren(DocumentEvent.ElementChange ec, DocumentEvent e, ViewFactory f) モデルが変更されたという通知を受け取ると、子ビューを更新します。このビューが扱う要素の変更記録があります。 このメソッドの実装では、このビューが表す要素の子要素を、子ビューが直接扱うと想定します。ViewFactory
は、ElementChange
内の追加として指定された、そのElementChange
内の特定のインデックスから始まる、各要素の子ビューを作成するために使用されます。 指定された削除される要素を表す子ビューの数は削除されます。- パラメータ:
ec
- このビューが扱う要素への変更情報。 このメソッドが呼び出される場合はnull
にはならないe
- 関連するドキュメントからの変更情報f
- 子ビューの構築に使用するファクトリ- 戻り値:
- このビューが扱う要素の子要素を、子ビューが表すかどうか。 一部のビューでは扱う要素の一部を表す子を作成し、falseが返される。 この情報は、追加された要素の範囲のビューが転送されるかどうかを指定するのに使用される
- 導入されたバージョン:
- 1.3
- 関連項目:
-
forwardUpdate
protected void forwardUpdate(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a, ViewFactory f) 指定されたDocumentEvent
を、モデルへの変更について通知する必要のある子ビューに転送します。 このビューが扱う要素に変更があった場合、転送のときに考慮します(新しい子ビューが通知を受けないなど)。- パラメータ:
ec
- このビューが扱う要素への変更。変更がなかった場合、null
になる可能性がある。e
- 関連するドキュメントからの変更情報a
- ビューの現在の割当てf
- ビューが子を持つ場合に再構築に使用するファクトリ- 導入されたバージョン:
- 1.3
- 関連項目:
-
forwardUpdateToView
protected void forwardUpdateToView(View v, DocumentEvent e, Shape a, ViewFactory f) 指定された子ビューにDocumentEvent
を転送します。 このメソッドは、イベントのタイプに左右されるinsertUpdate
、removeUpdate
、またはchangedUpdate
への呼出しを持つビューを送信するだけです。 イベントが必要な子にイベントを転送するときに、forwardUpdate
で呼び出されます。- パラメータ:
v
- イベントを子ビューに転送するe
- 関連するドキュメントからの変更情報a
- ビューの現在の割当てf
- ビューが子を持つ場合に再構築に使用するファクトリ- 導入されたバージョン:
- 1.3
- 関連項目:
-
updateLayout
protected void updateLayout(DocumentEvent.ElementChange ec, DocumentEvent e, Shape a) モデルから変更の通知を受け取った場合に、レイアウトを更新します。ElementChange
記録がnull
でない場合、新しいレイアウトが再スケジュールされるように、preferenceChanged
を呼び出すために実装されます。- パラメータ:
ec
- このビューが扱う要素への変更。変更がなかった場合、null
になる可能性があるe
- 関連するドキュメントからの変更情報a
- ビューの現在の割当て- 導入されたバージョン:
- 1.3
- 関連項目:
-
modelToView
非推奨。ドキュメント・モデルの座標空間からビューの座標空間へのマッピングを提供します。 これは、バイアスのデフォルトを以前に暗示されたPosition.Bias.Forward
にするために実装されます。- パラメータ:
pos
- 変換対象の位置>= 0a
- 割り当てられた描画領域- 戻り値:
- 指定された位置のバウンディング・ボックス
- 例外:
BadLocationException
- 指定された位置が、関連するドキュメント内の有効な位置を示さない場合- 関連項目:
-
viewToModel
@Deprecated public int viewToModel(float x, float y, Shape a) 非推奨。ビューの座標空間からモデルの論理座標空間へのマッピングを提供します。- パラメータ:
x
- X座標>= 0y
- Y座標>= 0a
- 割り当てられた描画領域- 戻り値:
- 指定されたビュー内の点をもっとも適切に表現するモデル内の位置>= 0
- 関連項目:
-