|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.swing.text.View
public abstract class View
View クラスは、テキストパッケージの非常に重要な部分です。名前が示すとおり、テキストモデルのビュー、またはテキストモデルの一部を表します。名前が示すように、テキストモデルのビュー、あるいはテキストモデルの一部分を表します。このクラスはテキストコンポーネントの外観を扱います。
デフォルトでは、ビューは軽量です。ビューには、ビューが状態を保持しないで多くのものを取得することができる親ビューへの参照と、モデル (Element) の一部分への参照が含まれています。ビューは、典型的なだけで便利なマッピングである、モデルの要素を正確に表す必要はありません。バージョン 1.1 および 1.2 の両方で機能する API は、移行によって生じる問題を最小化するのに便利です。ビューがバラバラにされた場合の通常のフォーマットの結果です。モデルが変更され、ビューがそのモデルを反映するように変更されなければならないとき、要素との実質的な関係の利便性を、ビューを生成するファクトリの構築によって簡単にしたり、ビュー各部分の追跡を継続することで簡単にします。つまり、単純なビューは Element を直接表しますが、複雑なビューは違います。
ビューには次の機能があります。
Component などの収容側 Component と同じ。すなわち、親が明示的に座標体系を変更していない限り、子ビューは親ビューと同じ座標体系に存在する。自分を再描画するようにスケジュールするために、ビューは収容側 Component の再描画を呼び出すことができる
Graphics オブジェクトはどんな方法でも初期化されない。ビューが必要な設定をしなければならない
View は透明。ビューがその割り当て全体を描画する場合もあるが、通常は描画しない。View 実装のツリーを下位へたどってレンダリングを実行する。各 View はその子のレンダリングを扱う。この動作はスレッドに対する安全性に依存している。ビューの実装にスレッドに対する安全性を考慮する必要がない場合は、同時に使用できるほかのビューの実装が、スレッドに対する安全性を保証するツリートラバーサルに依存する
| フィールドの概要 | |
|---|---|
static int |
BadBreakWeight
フォーマット目的とするには不完全な分割の機会であるビューを示すウェイトです。 |
static int |
ExcellentBreakWeight
分割をサポートしているビューを示すウェイトで、分割するのに適した位置であることを表わしています。 |
static int |
ForcedBreakWeight
分割をサポートしているビューを示すウェイトで、子を分割することで子をフォーマットするビューに配置されている場合に、ビューを正しく表わすには分割しなければいけません。 |
static int |
GoodBreakWeight
分割をサポートしているビューを示すウェイトですが、もっと良い機会が存在する可能性があります。 |
static int |
X_AXIS
フォーマット/分割処理の軸です。 |
static int |
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 |
| コンストラクタの概要 | |
|---|---|
View(Element elem)
新しい View オブジェクトを作成します。 |
|
| メソッドの概要 | |
|---|---|
void |
append(View v)
1 つの子ビューを追加します。 |
View |
breakView(int axis,
int offset,
float pos,
float len)
指定された軸でこのビューの分割を試みます。 |
void |
changedUpdate(DocumentEvent e,
Shape a,
ViewFactory f)
このビューが扱う位置で属性が変更されたことをドキュメントから通知します。 |
View |
createFragment(int p0,
int p1)
要素の一部分を表すビューを作成します。 |
protected void |
forwardUpdate(DocumentEvent.ElementChange ec,
DocumentEvent e,
Shape a,
ViewFactory f)
指定された DocumentEvent をモデルの変更通知が必要な子ビューに転送します。 |
protected void |
forwardUpdateToView(View v,
DocumentEvent e,
Shape a,
ViewFactory f)
指定された子ビューに DocumentEvent を転送します。 |
float |
getAlignment(int axis)
軸に沿ったこのビューの望ましいレイアウトを決定します。 |
AttributeSet |
getAttributes()
描画するときに使用する属性を取り出します。 |
int |
getBreakWeight(int axis,
float pos,
float len)
このビューで分割のウェイトがどのくらい適切かを示します。 |
Shape |
getChildAllocation(int index,
Shape a)
指定された子ビューの割り当てを取り出します。 |
Container |
getContainer()
ビューを収容するコンテナを取り出します。 |
Document |
getDocument()
ビューに関連したモデルを取り出します。 |
Element |
getElement()
このビューがマッピングされる対象の構造部分を取り出します。 |
int |
getEndOffset()
このビューが扱うモデルの一部を取り出します。 |
Graphics |
getGraphics()
描画のための Graphics を取得します。 |
float |
getMaximumSpan(int axis)
このビューの最大スパンを軸に沿って指定します。 |
float |
getMinimumSpan(int axis)
このビューの最小スパンを軸に沿って指定します。 |
int |
getNextVisualPositionFrom(int pos,
Position.Bias b,
Shape a,
int direction,
Position.Bias[] biasRet)
キャレットが配置される可能性のある、視覚的に表された次のモデル位置を決定する手段を提供します。 |
View |
getParent()
ビューの親を返します。 |
abstract float |
getPreferredSpan(int axis)
このビューに適切なスパンを軸に沿って指定します。 |
int |
getResizeWeight(int axis)
指定された軸に沿ってビューのサイズを変更できるかどうかを指定します。 |
int |
getStartOffset()
このビューが扱うモデルの一部を取り出します。 |
String |
getToolTipText(float x,
float y,
Shape allocation)
指定された位置にあるツールヒントのテキストを返します。 |
View |
getView(int n)
n 番目の子ビューを返します。 |
int |
getViewCount()
このビュー内のビューの数を返します。 |
ViewFactory |
getViewFactory()
ビュー階層を供給している ViewFactory の実装を取り出します。 |
int |
getViewIndex(float x,
float y,
Shape allocation)
ビュー内の指定された位置を表す子ビューインデックスを返します。 |
int |
getViewIndex(int pos,
Position.Bias b)
モデル内の指定された位置を表す子ビューのインデックスを返します。 |
void |
insert(int offs,
View v)
1 つの子ビューを挿入します。 |
void |
insertUpdate(DocumentEvent e,
Shape a,
ViewFactory f)
このビューが扱う位置でドキュメントに何かが挿入されたことを通知します。 |
boolean |
isVisible()
ビューが可視かどうかを示す boolean 型の値を返します。 |
Shape |
modelToView(int p0,
Position.Bias b0,
int p1,
Position.Bias b1,
Shape a)
指定した範囲について、ドキュメントモデル座標空間からビュー座標空間へのマップを提供します。 |
Shape |
modelToView(int pos,
Shape a)
推奨されていません。 |
abstract Shape |
modelToView(int pos,
Shape a,
Position.Bias b)
指定した文字について、ドキュメントモデル座標空間からビュー座標空間へのマップを提供します。 |
abstract void |
paint(Graphics g,
Shape allocation)
指定された描画表面およびその表面上の領域を使って描画します。 |
void |
preferenceChanged(View child,
boolean width,
boolean height)
子ビューは親でこのメソッドを呼び出し、設定が変更されたこと、および再度レイアウトが考慮されなければならないことを示すことができます。 |
void |
remove(int i)
指定された位置にある子を 1 つ削除します。 |
void |
removeAll()
すべての子を削除します。 |
void |
removeUpdate(DocumentEvent e,
Shape a,
ViewFactory f)
このビューが扱うドキュメント内の位置から何かが削除されたということを通知します。 |
void |
replace(int offset,
int length,
View[] views)
子ビューを置換します。 |
void |
setParent(View parent)
このビューの親ビューを確立します。 |
void |
setSize(float width,
float height)
ビューのサイズを設定します。 |
protected boolean |
updateChildren(DocumentEvent.ElementChange ec,
DocumentEvent e,
ViewFactory f)
モデルが変更されたという通知を受け取ると、子ビューを更新します。 |
protected void |
updateLayout(DocumentEvent.ElementChange ec,
DocumentEvent e,
Shape a)
モデルから変更の通知を受け取った場合に、レイアウトを更新します。 |
int |
viewToModel(float x,
float y,
Shape a)
推奨されていません。 |
abstract int |
viewToModel(float x,
float y,
Shape a,
Position.Bias[] biasReturn)
ビューの座標空間からモデルの論理座標空間へのマッピングを提供します。 |
| クラス java.lang.Object から継承されたメソッド |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
|---|
public static final int BadBreakWeight
getBreakWeight(int, float, float),
GoodBreakWeight,
ExcellentBreakWeight,
ForcedBreakWeight,
定数フィールド値public static final int GoodBreakWeight
getBreakWeight(int, float, float),
BadBreakWeight,
ExcellentBreakWeight,
ForcedBreakWeight,
定数フィールド値public static final int ExcellentBreakWeight
getBreakWeight(int, float, float),
BadBreakWeight,
GoodBreakWeight,
ForcedBreakWeight,
定数フィールド値public static final int ForcedBreakWeight
getBreakWeight(int, float, float),
BadBreakWeight,
GoodBreakWeight,
ExcellentBreakWeight,
定数フィールド値public static final int X_AXIS
public static final int Y_AXIS
| コンストラクタの詳細 |
|---|
public View(Element elem)
View オブジェクトを作成します。
elem - 表現対象の Element| メソッドの詳細 |
|---|
public View getParent()
nullpublic boolean isVisible()
public abstract float getPreferredSpan(int axis)
axis - View.X_AXIS または View.Y_AXIS
getPreferredSpan(int)public float getMinimumSpan(int axis)
axis - View.X_AXIS または View.Y_AXIS
getPreferredSpan(int)public float getMaximumSpan(int axis)
axis - View.X_AXIS または View.Y_AXIS
getPreferredSpan(int)
public void preferenceChanged(View child,
boolean width,
boolean height)
revalidate を呼び出します。
child - 子ビューwidth - 幅の設定が変更されている場合は trueheight - 高さの設定が変更されている場合は trueJComponent.revalidate()public float getAlignment(int axis)
axis - View.X_AXIS または View.Y_AXIS
public abstract void paint(Graphics g,
Shape allocation)
g - 使用する描画表面allocation - 描画のために割り当てられた領域public void setParent(View parent)
super.setParent() を呼び出す必要があります。
parent - 新しい親。ビューが親から削除される場合は nullpublic int getViewCount()
getViewCount()public View getView(int n)
null を返します。
n - 取得するビューの番号 >= 0 && < getViewCount()
public void removeAll()
replace の簡易呼び出しです。
public void remove(int i)
replace の簡易呼び出しです。
public void insert(int offs,
View v)
replace の簡易呼び出しです。
offs - ビューを挿入する位置のオフセット >= 0v - ビューreplace(int, int, javax.swing.text.View[])public void append(View v)
replace の簡易呼び出しです。
v - ビューreplace(int, int, javax.swing.text.View[])
public void replace(int offset,
int length,
View[] views)
null に設定された親を持ち、削除されるビューの内部を参照しているので、ガベージコレクトが可能です。デフォルトではビューに子がないので、実装しても何も行われません。
offset - 新規ビューを挿入するための、 子ビューの開始インデックス。この値は 0 以上で、getViewCount 以下length - 削除する既存の子ビューの数。この値は 0 以上で、(getViewCount() - offset) 以下views - 追加する子ビュー。追加される子がない場合は、null も可 (削除に便利)
public int getViewIndex(int pos,
Position.Bias b)
pos - 位置 >= 0
public Shape getChildAllocation(int index,
Shape a)
null を返します。
index - 子のインデックス。0 以上で getViewCount() より小さい値a - このビューに対する割り当て
public int getNextVisualPositionFrom(int pos,
Position.Bias b,
Shape a,
int direction,
Position.Bias[] biasRet)
throws BadLocationException
pos - 変換対象の位置 >= 0a - 割り当てられた描画領域direction - 現在位置からの方向。これは、次の値のいずれかになる: BadLocationException
IllegalArgumentException - direction が前述の正当な値のどれでもない場合
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 値のどれでもない場合viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])
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(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])
public abstract int viewToModel(float x,
float y,
Shape a,
Position.Bias[] biasReturn)
biasReturn 引数は、指定された点がモデル内の次の文字と近いのか、あるいはモデル内の前の文字と近いのかを示します。
x - X 座標 >= 0y - Y 座標 >= 0a - 割り当てられた描画領域
biasReturn 引数は、 指定された点がモデル内の 次の文字と近いのか、 モデル内の前の文字と近いのかを示す
public void insertUpdate(DocumentEvent e,
Shape a,
ViewFactory f)
e - 関連するドキュメントからの変更情報a - ビューの現在の割り当てf - ビューが子を持つ場合に再構築に使用するファクトリinsertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
public void removeUpdate(DocumentEvent e,
Shape a,
ViewFactory f)
e - 関連するドキュメントからの変更情報a - ビューの現在の割り当てf - ビューが子を持つ場合に再構築に使用するファクトリremoveUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
public void changedUpdate(DocumentEvent e,
Shape a,
ViewFactory f)
e - 関連するドキュメントからの変更情報a - ビューの現在の割り当てf - ビューが子を持つ場合に再構築に使用するファクトリchangedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)public Document getDocument()
nullgetDocument()public int getStartOffset()
getStartOffset()public int getEndOffset()
getEndOffset()public Element getElement()
getElement()public Graphics getGraphics()
Graphics を取得します。フォント文字を指定するのに使用されますが、出力ビューの場合はコンポーネントビューの場合と異なります。
Graphics オブジェクトpublic AttributeSet getAttributes()
AttributeSet を介してそれらに常にアクセスしなければいけません。
public View breakView(int axis,
int offset,
float pos,
float len)
このメソッドはビュー自体を返すために実装され、それは分割できないデフォルトの動作を表します。ビューが分割をサポートする場合、返されるビューの開始オフセットは指定されたオフセットでなければならず、終了オフセットは分割されるビューの終了オフセット以下であるべきです。
axis - View.X_AXIS または View.Y_AXISoffset - 分割されたフラグメントが占めるドキュメントモデル内の位置。 0 以上。 これは返されるフラグメントの 開始オフセットになるpos - 分割されたビューが占める軸に沿った位置。 0 以上。これはタブの計算などで 便利な場合があるlen - 分割が必要な軸に沿った距離 (0 以上)
ParagraphView
public View createFragment(int p0,
int p1)
p0 - 開始オフセット。0 以上。要素の開始オフセットに等しいか、それより大きい値で、要素の終了オフセットより小さい値にするp1 - 終了オフセット。p0 より大きい。要素の開始オフセットより大きく、要素の終了オフセットに等しいか、それより小さい値にする
LabelView
public int getBreakWeight(int axis,
float pos,
float len)
breakView を呼び出すもっとも適切なビューを判断するために使用できます。たとえば、余白を含むテキストを表すビューは、余白を含まないビューよりも適切です。ウェイトが高いほど、分割にはより適切です。BadBreakWeight 以下の値は、分割すべきではありません。ForcedBreakWeight 以上の値は、分割しなければいけません。
このメソッドは、長さがビューの長さより長い場合 (ビュー全体がフラグメントを表す) を除いて BadBreakWeight を返すデフォルトの動作を提供します。ビューが分割動作をサポートするように記述されていない限り、ビューを分割しようとするのは適切ではありません。分割をサポートするビューには LabelView などがあります。分割ウェイトを使用するビューには ParagraphView などがあります。
axis - View.X_AXIS または View.Y_AXISpos - 分割されたビューの開始の可能性のある位置 (0 以上)。これはタブ位置の計算に便利な場合があるlen - 分割が必要な pos からの相対的な長さ (0 以上)
LabelView,
ParagraphView,
BadBreakWeight,
GoodBreakWeight,
ExcellentBreakWeight,
ForcedBreakWeightpublic int getResizeWeight(int axis)
axis - View.X_AXIS または View.Y_AXIS
public void setSize(float width,
float height)
width - 幅 >= 0height - 高さ >= 0public Container getContainer()
nullpublic ViewFactory getViewFactory()
ViewFactory の実装を取り出します。ビューには通常、もっともファクトリを必要とするときにモデルから更新するための引数として渡されますが、このメソッドはそれ以外のときに実装を提供するために機能します。
null
public String getToolTipText(float x,
float y,
Shape allocation)
JTextComponent.getToolTipText(java.awt.event.MouseEvent)
public int getViewIndex(float x,
float y,
Shape allocation)
x, y) を含む境界を持つ最初の子を返します。
x - x 座標y - y 座標allocation - ビューの現在の割り当て
protected boolean updateChildren(DocumentEvent.ElementChange ec,
DocumentEvent e,
ViewFactory f)
ViewFactory は、ElementChange 内の追加として指定された、その ElementChange 内の特定のインデックスから始まる、各要素の子ビューを作成するために使用されます。指定された削除される要素を表す子ビューの数は削除されます。
ec - このビューが扱う要素への変更情報。このメソッドが呼び出されない場合は null にはならないe - 関連するドキュメントからの変更情報f - 子ビューの構築に使用するファクトリ
insertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory),
removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory),
changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
protected void forwardUpdate(DocumentEvent.ElementChange ec,
DocumentEvent e,
Shape a,
ViewFactory f)
DocumentEvent をモデルの変更通知が必要な子ビューに転送します。このビューが扱う要素に変更があった場合、転送のときに考慮します (新しい子ビューが通知を受けないなど)。
ec - このビューが扱う要素への変更。 変更がなかった場合、null になる可能性があるe - 関連するドキュメントからの変更情報a - ビューの現在の割り当てf - ビューが子を持つ場合に再構築に使用するファクトリinsertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory),
removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory),
changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
protected void forwardUpdateToView(View v,
DocumentEvent e,
Shape a,
ViewFactory f)
DocumentEvent を転送します。このメソッドは、イベントのタイプに左右される insertUpdate、removeUpdate、または changedUpdate への呼び出しを持つビューを送信するだけです。イベントが必要な子にイベントを転送するときに、forwardUpdate で呼び出されます。
v - イベントを子ビューに転送するe - 関連するドキュメントからの変更情報a - ビューの現在の割り当てf - ビューが子を持つ場合に再構築に使用するファクトリforwardUpdate(javax.swing.event.DocumentEvent.ElementChange, javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
protected void updateLayout(DocumentEvent.ElementChange ec,
DocumentEvent e,
Shape a)
ElementChange 記録が null でない場合、新しいレイアウトが再スケジュールされるように、preferenceChanged を呼び出すために実装されます。
ec - このビューが扱う要素への変更。 変更がなかった場合、null になる可能性があるe - 関連するドキュメントからの変更情報a - ビューの現在の割り当てinsertUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory),
removeUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory),
changedUpdate(javax.swing.event.DocumentEvent, java.awt.Shape, javax.swing.text.ViewFactory)
@Deprecated
public Shape modelToView(int pos,
Shape a)
throws BadLocationException
Position.Bias.Forward にするために実装されます。
pos - 変換対象の位置 >= 0a - 割り当てられた描画領域
BadLocationException - 指定された位置が、関連するドキュメント内の 有効な位置を示さない場合modelToView(int, java.awt.Shape, javax.swing.text.Position.Bias)
@Deprecated
public int viewToModel(float x,
float y,
Shape a)
x - X 座標 >= 0y - Y 座標 >= 0a - 割り当てられた描画領域
viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。