java.lang.Object javax.swing.text.AbstractDocument javax.swing.text.PlainDocument
public class PlainDocument
维护无任何字符属性的普通文档。此文档的默认元素结构是文本中的行的映射。由 getDefaultRootElement 返回的 Element 是行的映射,且每个子元素表示一行。此模型不维护任何字符级属性,但每行都可以用一个任意的属性集来标记。使用默认的根元素可以快速执行从行到偏移量和从偏移量到行的转换。由编辑激发的 DocumentEvent 的结构信息将指示行结构的更改。
默认的内容存储管理是通过间隙缓冲区实现 (GapContent) 执行的。如果编辑是连续的或集群化的(正如常见的那样),此操作支持对大型文档的高效合理编辑。
警告:此类的已序列化对象与以后的 Swing 版本不兼容。当前的序列化支持适用于短期存储或运行相同 Swing 版本的应用程序之间的 RMI。从 1.4 版本开始,已在 java.beans
包中添加了支持所有 JavaBeansTM 长期存储的功能。请参见 XMLEncoder
。
Document
,
AbstractDocument
嵌套类摘要 |
---|
字段摘要 | |
---|---|
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) 随文本的移除更新任何文档结构。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
字段详细信息 |
---|
public static final String tabSizeAttribute
public static final String lineLimitAttribute
构造方法详细信息 |
---|
public PlainDocument()
GapContent
的默认模型。
public PlainDocument(AbstractDocument.Content c)
c
- 内容容器
方法详细信息 |
---|
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)
public Element getDefaultRootElement()
Document
中的
getDefaultRootElement
AbstractDocument
中的
getDefaultRootElement
Document.getDefaultRootElement()
protected AbstractDocument.AbstractElement createDefaultRoot()
public Element getParagraphElement(int pos)
AbstractDocument
中的
getParagraphElement
pos
- 起始偏移量,该值 >= 0
protected void insertUpdate(AbstractDocument.DefaultDocumentEvent chng, AttributeSet attr)
AbstractDocument
中的
insertUpdate
chng
- 描述编辑的更改事件
attr
- 插入文本的属性集
protected void removeUpdate(AbstractDocument.DefaultDocumentEvent chng)
AbstractDocument
中的
removeUpdate
chng
- 描述编辑的更改事件