JavaTM 2 Platform
Standard Ed. 6

javax.swing.text
類別 PlainView

java.lang.Object
  繼承者 javax.swing.text.View
      繼承者 javax.swing.text.PlainView
所有已實作的介面:
SwingConstants, TabExpander
直接已知子類別:
FieldView

public class PlainView
extends View
implements TabExpander

實作簡單的多行文本視圖的 View 介面,該文本視圖的文本只有一種字體和顏色。該視圖用每個子元素表示文本的某一行。

另請參見:
View

欄位摘要
protected  FontMetrics metrics
          當前字體的字體規格。
 
從類別 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
 
建構子摘要
PlainView(Element elem)
          建構在元素上包裹的新 PlainView。
 
方法摘要
 void changedUpdate(DocumentEvent changes, Shape a, ViewFactory f)
          發出通知,通知文檔中此視圖負責的某個位置的屬性已更改。
protected  void damageLineRange(int line0, int line1, Shape a, Component host)
          重新繪製給定的行範圍。
protected  void drawLine(int lineIndex, Graphics g, int x, int y)
          呈現文本的某一行,取消末尾的空白並擴展所有的製表符。
protected  int drawSelectedText(Graphics g, int x, int y, int p0, int p1)
          將模型中給定的範圍呈現為選定文本。
protected  int drawUnselectedText(Graphics g, int x, int y, int p0, int p1)
          將模型中給定的範圍呈現為正常的未選定文本。
protected  Segment getLineBuffer()
          提供對可用於從相關文檔獲取文本的緩衝區的存取。
 float getPreferredSpan(int axis)
          確定此視圖沿某軸的首選區域。
protected  int getTabSize()
          返回文檔中製表符大小的集合,預設值是 8。
 void insertUpdate(DocumentEvent changes, Shape a, ViewFactory f)
          發出通知,通知在文檔中此視圖負責的某個位置已插入內容。
protected  Rectangle lineToRect(Shape a, int line)
          確定表示給定行的矩形。
 Shape modelToView(int pos, Shape a, Position.Bias b)
          提供從文檔模型坐標空間到所映射的視圖坐標空間的映射。
 float nextTabStop(float x, int tabOffset)
          在給定參考位置之後,返回下一個製表符停靠位的位置。
 void paint(Graphics g, Shape a)
          使用給定呈現面和該表面的區域呈現。
 void removeUpdate(DocumentEvent changes, Shape a, ViewFactory f)
          通知在文檔中此視圖負責的某個位置已插入內容。
 void setSize(float width, float height)
          設置視圖的大小。
protected  void updateDamage(DocumentEvent changes, Shape a, ViewFactory f)
          重新繪製給定文檔事件覆寫的更改區域。
protected  void updateMetrics()
          檢查字體規格和最長行是否最新。
 int viewToModel(float fx, float fy, Shape a, Position.Bias[] bias)
          提供從視圖坐標空間到該模型的邏輯坐標空間的映射。
 
從類別 javax.swing.text.View 繼承的方法
append, breakView, createFragment, forwardUpdate, forwardUpdateToView, getAlignment, getAttributes, getBreakWeight, getChildAllocation, getContainer, getDocument, getElement, getEndOffset, getGraphics, getMaximumSpan, getMinimumSpan, getNextVisualPositionFrom, getParent, getResizeWeight, getStartOffset, getToolTipText, getView, getViewCount, getViewFactory, getViewIndex, getViewIndex, insert, isVisible, modelToView, modelToView, preferenceChanged, remove, removeAll, replace, setParent, updateChildren, updateLayout, viewToModel
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

欄位詳細資訊

metrics

protected FontMetrics metrics
當前字體的字體規格。

建構子詳細資訊

PlainView

public PlainView(Element elem)
建構在元素上包裹的新 PlainView。

參數:
elem - 元素
方法詳細資訊

getTabSize

protected int getTabSize()
返回文檔中製表符大小的集合,預設值是 8。

返回:
製表符大小

drawLine

protected void drawLine(int lineIndex,
                        Graphics g,
                        int x,
                        int y)
呈現文本的某一行,取消末尾的空白並擴展所有的製表符。實作此方法以調用方法 drawUnselectedTextdrawSelectedText,這樣可定制呈現選定和未選定文本的方法。

參數:
lineIndex - 要繪製的行,該值 >= 0
g - Graphics 上下文
x - 起始 X 位置,該值 >= 0
y - 起始 Y 位置 >= 0
另請參見:
drawUnselectedText(java.awt.Graphics, int, int, int, int), drawSelectedText(java.awt.Graphics, int, int, int, int)

drawUnselectedText

protected int drawUnselectedText(Graphics g,
                                 int x,
                                 int y,
                                 int p0,
                                 int p1)
                          throws BadLocationException
將模型中給定的範圍呈現為正常的未選定文本。使用前景色或禁用的顏色呈現文本。

參數:
g - 圖形上下文
x - 起始 X 坐標,該值 >= 0
y - 起始 Y 坐標,該值 >= 0
p0 - 模型中的起始位置,該值 >= 0
p1 - 模型中的結束位置,該值 >= 0
返回:
範圍末尾的 X 位置,該值 >= 0
拋出:
BadLocationException - 如果範圍無效

drawSelectedText

protected int drawSelectedText(Graphics g,
                               int x,
                               int y,
                               int p0,
                               int p1)
                        throws BadLocationException
將模型中給定的範圍呈現為選定文本。實作此方法以使用承載元件中指定的顏色呈現文本。假定輪廓色將呈現選定的背景。

參數:
g - 圖形上下文
x - 起始 X 坐標,該值 >= 0
y - 起始 Y 坐標,該值 >= 0
p0 - 模型中的起始位置,該值 >= 0
p1 - 模型中的結束位置,該值 >= 0
返回:
範圍末尾的位置
拋出:
BadLocationException - 如果範圍無效

getLineBuffer

protected final Segment getLineBuffer()
提供對可用於從相關文檔獲取文本的緩衝區的存取。

返回:
緩衝區

updateMetrics

protected void updateMetrics()
檢查字體規格和最長行是否最新。

從以下版本開始:
1.4

getPreferredSpan

public float getPreferredSpan(int axis)
確定此視圖沿某軸的首選區域。

指定者:
類別 View 中的 getPreferredSpan
參數:
axis - 可以是 View.X_AXIS 或 View.Y_AXIS
返回:
視圖可能要在其中呈現的區域,該值 >= 0。通常會告知該視圖在返回的區域中呈現,但不保證一定如此。父級可選擇重新調整視圖大小或拆分視圖。
拋出:
IllegalArgumentException - 如果軸無效
另請參見:
View.getPreferredSpan(int)

paint

public void paint(Graphics g,
                  Shape a)
使用給定呈現面和該表面的區域呈現。該視圖可能需要進行佈置和創建子視圖,以使它本身能夠在給定的分派區域呈現。

指定者:
類別 View 中的 paint
參數:
g - 要使用的呈現表面
a - 已分派的呈現區域
另請參見:
View.paint(java.awt.Graphics, java.awt.Shape)

modelToView

public Shape modelToView(int pos,
                         Shape a,
                         Position.Bias b)
                  throws BadLocationException
提供從文檔模型坐標空間到所映射的視圖坐標空間的映射。

指定者:
類別 View 中的 modelToView
參數:
pos - 要轉換的位置,該值 >= 0
a - 分派的要在其中呈現的區域
b - 當位置是兩個視圖的邊界時,該參數是離由偏移量表示的前一個字元或者下一個字元的偏差;b 將是這些值之一:
  • Position.Bias.Forward
  • Position.Bias.Backward
返回:
給定位置的邊界框
拋出:
BadLocationException - 如果給定位置在所關聯的文檔中不是一個有效位置
另請參見:
View.modelToView(int, java.awt.Shape, javax.swing.text.Position.Bias)

viewToModel

public int viewToModel(float fx,
                       float fy,
                       Shape a,
                       Position.Bias[] bias)
提供從視圖坐標空間到該模型的邏輯坐標空間的映射。

指定者:
類別 View 中的 viewToModel
參數:
fx - X 坐標,該值 >= 0
fy - Y 坐標,該值 >= 0
a - 要呈現的分派區域
返回:
在模型內最能表示該視圖中給定點的位置,該值 >= 0
另請參見:
View.viewToModel(float, float, java.awt.Shape, javax.swing.text.Position.Bias[])

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)

setSize

public void setSize(float width,
                    float height)
設置視圖的大小。如果此方法有任何佈局任務,則會導致沿給定的軸佈局視圖。

覆寫:
類別 View 中的 setSize
參數:
width - 寬度 >= 0
height - 寬度 >= 0

nextTabStop

public float nextTabStop(float x,
                         int tabOffset)
在給定參考位置之後,返回下一個製表符停靠位的位置。此實作不支持諸如居中對齊一類別的事情,所以它將忽略 tabOffset 參數。

指定者:
介面 TabExpander 中的 nextTabStop
參數:
x - 當前位置,該值 >= 0
tabOffset - 下一個串流內出現製表符的位置,該值 >= 0。
返回:
以點為測量單位的製表位,該值 >= 0

updateDamage

protected void updateDamage(DocumentEvent changes,
                            Shape a,
                            ViewFactory f)
重新繪製給定文檔事件覆寫的更改區域。對於只在一行上進行插入/移除的情況,破壞範圍開始處的行。如果添加或移除多行,則破壞整個視圖。檢查最長的行以查看它是否更改。

從以下版本開始:
1.4

damageLineRange

protected void damageLineRange(int line0,
                               int line1,
                               Shape a,
                               Component host)
重新繪製給定的行範圍。

參數:
host - 承載視圖的元件(用於調用 repaint)
a - 視圖所呈現的分派區域
line0 - 要重繪的起始行號。它必須是模型中的有效行號。
line1 - 要重繪的結束行號。它必須是模型中的有效行號。
從以下版本開始:
1.4

lineToRect

protected Rectangle lineToRect(Shape a,
                               int line)
確定表示給定行的矩形。

參數:
a - 視圖要呈現的分派區域
line - 要尋找的區域的行號。它必須是模型中的有效行號。
從以下版本開始:
1.4

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only