java.lang.Object
javax.swing.text.AbstractDocument
javax.swing.text.PlainDocument
- 所有已实现的接口:
-
Serializable
,Document
一个不维护任何字符属性的普通文档。该文档的默认元素结构是文本行的映射。getDefaultRootElement返回的Element是行的映射,每个子元素代表一行。该模型不维护任何字符级属性,但每行可以用一组任意属性进行标记。可以使用默认根元素快速执行行到偏移和偏移到行的转换。由编辑触发的DocumentEvent的结构信息将指示行结构更改。
默认的内容存储管理由一个间隙缓冲实现(GapContent)执行。当编辑是连续的或聚集的时,它支持对大型文档进行高效编辑,这是典型的情况。
警告: 该类的序列化对象将不兼容未来的Swing版本。当前的序列化支持适用于短期存储或在运行相同Swing版本的应用程序之间的RMI。从1.4开始,已将所有JavaBeans的长期存储支持添加到java.beans
包中。请参见XMLEncoder
。
- 参见:
-
Nested Class Summary
Nested classes/interfaces declared in class javax.swing.text.AbstractDocument
AbstractDocument.AbstractElement, AbstractDocument.AttributeContext, AbstractDocument.BranchElement, AbstractDocument.Content, AbstractDocument.DefaultDocumentEvent, AbstractDocument.ElementEdit, AbstractDocument.LeafElement
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
指定行的最大长度的属性名称,如果有最大长度。static final String
指定内容中包含的制表符的制表符大小的属性名称。Fields declared in class javax.swing.text.AbstractDocument
BAD_LOCATION, BidiElementName, ContentElementName, ElementNameAttribute, listenerList, ParagraphElementName, SectionElementName
Fields declared in interface javax.swing.text.Document
StreamDescriptionProperty, TitleProperty
-
Constructor Summary
ConstructorDescription构造一个纯文本文档。构造一个纯文本文档。 -
Method Summary
Modifier and TypeMethodDescriptionprotected AbstractDocument.AbstractElement
创建用于表示默认文档结构的根元素。获取文档模型的默认根元素。getParagraphElement
(int pos) 获取包含给定位置的段落元素。void
insertString
(int offs, String str, AttributeSet a) 将一些内容插入文档。protected void
作为文本插入的结果更新文档结构。protected void
作为文本删除的结果更新任何文档结构。Methods declared in class 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
-
Field Details
-
tabSizeAttribute
指定内容中包含的制表符的制表符大小的属性名称。值的类型为Integer。- 参见:
-
lineLimitAttribute
指定行的最大长度的属性名称,如果有最大长度。值的类型为Integer。- 参见:
-
-
Constructor Details
-
PlainDocument
public PlainDocument()构造一个纯文本文档。构建并设置了使用GapContent
的默认模型。 -
PlainDocument
构造一个纯文本文档。创建了一个默认根元素,并将制表符大小设置为8。- 参数:
-
c
- 内容的容器
-
-
Method Details
-
insertString
将一些内容插入文档。插入内容会导致在实际更改正在进行时保持写锁定,然后在抓取写锁定的线程上通知观察者。该方法是线程安全的,尽管大多数Swing方法不是。有关更多信息,请参见Swing中的并发。
- 指定者:
-
insertString
在接口Document
中 - 覆盖:
-
insertString
在类AbstractDocument
中 - 参数:
-
offs
- 起始偏移量 >= 0 -
str
- 要插入的字符串;对空字符串不执行任何操作 -
a
- 插入内容的属性 - 抛出:
-
BadLocationException
- 给定的插入位置不是文档内的有效位置 - 参见:
-
getDefaultRootElement
获取文档模型的默认根元素。- 指定者:
-
getDefaultRootElement
在接口Document
中 - 指定者:
-
getDefaultRootElement
在类AbstractDocument
中 - 返回:
- 根元素
- 参见:
-
createDefaultRoot
创建用于表示默认文档结构的根元素。- 返回:
- 基本元素
-
getParagraphElement
获取包含给定位置的段落元素。由于此文档仅模拟行,因此返回行而不是段落。- 指定者:
-
getParagraphElement
在类AbstractDocument
中 - 参数:
-
pos
- 起始偏移量 >= 0 - 返回:
- 元素
-
insertUpdate
作为文本插入的结果更新文档结构。这将在写锁定内发生。由于此文档仅映射行,因此我们刷新行映射。- 覆盖:
-
insertUpdate
在类AbstractDocument
中 - 参数:
-
chng
- 描述编辑的更改事件 -
attr
- 插入文本的属性集
-
removeUpdate
作为文本删除的结果更新任何文档结构。这将在写锁定内发生。由于结构表示行映射,因此只需检查删除是否跨越行。如果是,则将删除区域外的两行连接在一起。- 覆盖:
-
removeUpdate
在类AbstractDocument
中 - 参数:
-
chng
- 描述编辑的更改事件
-