- java.lang.Object
-
- javax.swing.text.StringContent
-
- All Implemented Interfaces:
-
Serializable
,AbstractDocument.Content
public final class StringContent extends Object implements AbstractDocument.Content, Serializable
AbstractDocument.Content接口的实现是一种强大的强制实现,对于较小的文档和/或调试很有用。 它将字符内容管理为一个简单的字符数组。 这也是相当低效的。通常建议使用间隙缓冲区或片表实现。 该缓冲区不会扩展到大尺寸。
警告:此类的序列化对象与将来的Swing版本不兼容。 当前的序列化支持适用于运行相同版本的Swing的应用程序之间的短期存储或RMI。 从1.4版本开始,所有JavaBeans的长期存储支持已被添加到
java.beans
软件包中。 请参阅XMLEncoder
。- 另请参见:
- Serialized Form
-
-
构造方法摘要
构造方法 Constructor 描述 StringContent()
创建一个新的StringContent对象。StringContent(int initialLength)
创建一个新的StringContent对象,并指定初始大小。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 Position
createPosition(int offset)
在内容中创建一个位置,该内容将随内容突变而跟踪更改。void
getChars(int where, int len, Segment chars)
检索一部分内容。protected Vector
getPositionsInRange(Vector v, int offset, int length)
返回一个Vector,其中包含UndoPosRef的实例,其位置范围为offset
至offset
+length
。String
getString(int where, int len)
检索一部分内容。UndoableEdit
insertString(int where, String str)
在内容中插入一个字符串。int
length()
返回内容的长度。UndoableEdit
remove(int where, int nitems)
删除部分内容。protected void
updateUndoPositions(Vector positions)
重置positions
所有UndoPosRef实例的positions
。
-
-
-
方法详细信息
-
length
public int length()
返回内容的长度。- Specified by:
-
length
在接口AbstractDocument.Content
- 结果
- 长度> = 1
- 另请参见:
-
AbstractDocument.Content.length()
-
insertString
public UndoableEdit insertString(int where, String str) throws BadLocationException
在内容中插入一个字符串。- Specified by:
-
insertString
在接口AbstractDocument.Content
- 参数
-
where
- 起始位置> = 0 && <length() -
str
- 要插入的非空字符串 - 结果
- 用于撤消的UndoableEdit对象
- 异常
-
BadLocationException
- 如果指定的位置无效 - 另请参见:
-
AbstractDocument.Content.insertString(int, java.lang.String)
-
remove
public UndoableEdit remove(int where, int nitems) throws BadLocationException
删除部分内容。 其中+ nitem必须是<length()。- Specified by:
-
remove
接口AbstractDocument.Content
- 参数
-
where
- 起始位置> = 0 -
nitems
- 要删除的字符数> = 0 - 结果
- 用于撤消的UndoableEdit对象
- 异常
-
BadLocationException
- 如果指定的位置无效 - 另请参见:
-
AbstractDocument.Content.remove(int, int)
-
getString
public String getString(int where, int len) throws BadLocationException
检索一部分内容。 其中+ len必须是<= length()。- Specified by:
-
getString
在接口AbstractDocument.Content
- 参数
-
where
- 起始位置> = 0 -
len
- 要检索的长度> = 0 - 结果
- 表示内容的字符串; 可能是空的
- 异常
-
BadLocationException
- 如果指定的位置无效 - 另请参见:
-
AbstractDocument.Content.getString(int, int)
-
getChars
public void getChars(int where, int len, Segment chars) throws BadLocationException
检索一部分内容。 其中+ len必须是<= length()- Specified by:
-
getChars
在接口AbstractDocument.Content
- 参数
-
where
- 起始位置> = 0 -
len
- 要检索的字符数> = 0 -
chars
- 返回字符的Segment对象 - 异常
-
BadLocationException
- 如果指定的位置无效 - 另请参见:
-
AbstractDocument.Content.getChars(int, int, javax.swing.text.Segment)
-
createPosition
public Position createPosition(int offset) throws BadLocationException
在内容中创建一个位置,该内容将随内容突变而跟踪更改。- Specified by:
-
createPosition
在接口AbstractDocument.Content
- 参数
-
offset
- 为> = 0创建位置的偏移量 - 结果
- 的位置
- 异常
-
BadLocationException
- 如果指定的位置无效
-
getPositionsInRange
protected Vector getPositionsInRange(Vector v, int offset, int length)
返回一个Vector,其中包含UndoPosRef的实例,位置范围为offset
至offset
+length
。 如果v
不为空,则匹配的位置将放在那里。 返回带有结果位置的向量。这是为了内部使用,通常不是子类的兴趣。
- 参数
-
v
- 要使用的向量,在null上创建一个新的 -
offset
- 起始偏移量> = 0 -
length
- 长度> = 0 - 结果
- 一组实例
-
updateUndoPositions
protected void updateUndoPositions(Vector positions)
重置positions
所有UndoPosRef实例的positions
。这是为了内部使用,通常不是子类的兴趣。
- 参数
-
positions
- 实例的位置
-
-