JavaTM 2 Platform
Standard Ed. 6

javax.swing.text
類別 PlainDocument

java.lang.Object
  繼承者 javax.swing.text.AbstractDocument
      繼承者 javax.swing.text.PlainDocument
所有已實作的介面:
Serializable, Document

public class PlainDocument
extends AbstractDocument

維護無任何字元屬性的普通文檔。此文檔的預設元素結構是文本中的行的映射。由 getDefaultRootElement 返回的 Element 是行的映射,且每個子元素表示一行。此模型不維護任何字元級屬性,但每行都可以用一個任意的屬性集來標記。使用預設的根元素可以快速執行從行到偏移量和從偏移量到行的轉換。由編輯觸發的 DocumentEvent 的結構資訊將指示行結構的更改。

預設的內容存儲管理是通過間隙緩衝區實作 (GapContent) 執行的。如果編輯是連續的或集群化的(正如常見的那樣),此操作支持對大型文檔的高效合理編輯。

警告:此類別的已序列化物件與以後的 Swing 版本不相容。當前的序列化支持適用於短期存儲或運行相同 Swing 版本的應用程序之間的 RMI。從 1.4 版本開始,已在 java.beans 套件中添加了支持所有 JavaBeansTM 長期存儲的功能。請參見 XMLEncoder

另請參見:
Document, AbstractDocument

巢狀類別摘要
 
從類別 javax.swing.text.AbstractDocument 繼承的巢狀類別/介面
AbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement
 
欄位摘要
static String lineLimitAttribute
          指定行的最大長度的屬性名稱(如果有最大長度)。
static String tabSizeAttribute
          指定內容中包含的製表符大小的屬性名稱。
 
從類別 javax.swing.text.AbstractDocument 繼承的欄位
BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementName
 
從介面 javax.swing.text.Document 繼承的欄位
StreamDescriptionProperty, TitleProperty
 
建構子摘要
PlainDocument()
          建構一個純文本文檔。
PlainDocument(AbstractDocument.Content c)
          建構一個純文本文檔。
 
方法摘要
protected  AbstractDocument.AbstractElement createDefaultRoot()
          創建用於表示預設文檔結構的根元素。
 Element getDefaultRootElement()
          獲取文檔模型的預設根元素。
 Element getParagraphElement(int pos)
          獲取包含給定位置的段落元素。
 void insertString(int offs, String str, AttributeSet a)
          向文檔中插入某些內容。
protected  void insertUpdate(AbstractDocument.DefaultDocumentEvent chng, AttributeSet attr)
          隨文本插入更新文檔結構。
protected  void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)
          隨文本的移除更新任何文檔結構。
 
從類別 javax.swing.text.AbstractDocument 繼承的方法
addDocumentListener, addUndoableEditListener, createBranchElement, createLeafElement, createPosition, dump, fireChangedUpdate, fireInsertUpdate, fireRemoveUpdate, fireUndoableEditUpdate, getAsynchronousLoadPriority, getAttributeContext, getBidiRootElement, getContent, getCurrentWriter, getDocumentFilter, getDocumentListeners, getDocumentProperties, getEndPosition, getLength, getListeners, getProperty, getRootElements, getStartPosition, getText, getText, getUndoableEditListeners, postRemoveUpdate, putProperty, readLock, readUnlock, remove, removeDocumentListener, removeUndoableEditListener, render, replace, setAsynchronousLoadPriority, setDocumentFilter, setDocumentProperties, writeLock, writeUnlock
 
從類別 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

欄位詳細資訊

tabSizeAttribute

public static final String tabSizeAttribute
指定內容中包含的製表符大小的屬性名稱。值的型別為 Integer。

另請參見:
常數欄位值

lineLimitAttribute

public static final String lineLimitAttribute
指定行的最大長度的屬性名稱(如果有最大長度)。值的型別為 Integer。

另請參見:
常數欄位值
建構子詳細資訊

PlainDocument

public PlainDocument()
建構一個純文本文檔。建構和設置一個使用 GapContent 的預設模型。


PlainDocument

public PlainDocument(AbstractDocument.Content c)
建構一個純文本文檔。創建一個預設的根元素,並將製表符大小設置為 8。

參數:
c - 內容容器
方法詳細資訊

insertString

public void insertString(int offs,
                         String str,
                         AttributeSet a)
                  throws BadLocationException
向文檔中插入某些內容。插入內容會導致在實際發生改變時存儲寫鎖定,接著會向執行緒上抓取該寫入鎖定的觀察者發出通知。

雖然大多數 Swing 方法不是執行緒安全的,但此方法是執行緒安全的。有關更多資訊,請參閱 How to Use Threads

指定者:
介面 Document 中的 insertString
覆寫:
類別 AbstractDocument 中的 insertString
參數:
offs - 起始偏移量,該值 >= 0
str - 要插入的字元串;null/空字元串不執行任何操作
a - 插入內容的屬性
拋出:
BadLocationException - 如果給定的插入位置不是文檔中的有效位置
另請參見:
Document.insertString(int, java.lang.String, javax.swing.text.AttributeSet)

getDefaultRootElement

public Element getDefaultRootElement()
獲取文檔模型的預設根元素。

指定者:
介面 Document 中的 getDefaultRootElement
指定者:
類別 AbstractDocument 中的 getDefaultRootElement
返回:
另請參見:
Document.getDefaultRootElement()

createDefaultRoot

protected AbstractDocument.AbstractElement createDefaultRoot()
創建用於表示預設文檔結構的根元素。

返回:
基本元素

getParagraphElement

public Element getParagraphElement(int pos)
獲取包含給定位置的段落元素。因為此文檔只模型化行,所以返回的應為行。

指定者:
類別 AbstractDocument 中的 getParagraphElement
參數:
pos - 起始偏移量,該值 >= 0
返回:
元素

insertUpdate

protected void insertUpdate(AbstractDocument.DefaultDocumentEvent chng,
                            AttributeSet attr)
隨文本插入更新文檔結構。這將在寫鎖定內發生。因為此文檔只映射出行,所以只刷新行映射。

覆寫:
類別 AbstractDocument 中的 insertUpdate
參數:
chng - 描述編輯的更改事件
attr - 插入文本的屬性集

removeUpdate

protected void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)
隨文本的移除更新任何文檔結構。這將在寫鎖定內發生。因為此結構只表示行映射,所以此方法只檢查是否移除行間距。如果是,移除區域外的兩行將合併在一起。

覆寫:
類別 AbstractDocument 中的 removeUpdate
參數:
chng - 描述編輯的更改事件

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

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