问题:我有 CaretListener 和 DocumentListener 在 JTextPane 上监听。
我需要一个能够判断 JTextPane 中插入符号所在的行的算法,这是一个说明性示例:
结果:第三行
结果:第二行
结果:第四行
并且如果算法可以判断插入符号在 JTextPane 中的哪一行,那么将括号之间的任何内容作为图片的子串应该相当容易(插入符号在字符m
处metadata
):
--
这就是我将从 JTextPane 检索到的整个文本分成句子的方式:
String[] lines = textPane.getText().split("\r?\n|\r", -1);
中的句子textPane
用 \n 分隔。
问题是,我怎样才能操纵插入符号让我知道它在哪个位置和哪一行?我知道插入符号的点表示它在哪个位置,但我不知道它在哪一行。假设我知道插入符号是哪一行,那么我可以lines[<line number>]
从那里做和操作字符串。
简而言之:我如何使用CaretListener 和/或 DocumentListener来知道插入符当前位于哪一行,并检索该行以进行进一步的字符串操作?请帮忙。谢谢。
如果需要进一步澄清,请告诉我。谢谢你的时间。