我有一个JTextArea
由行组成的(其中一些可能彼此重复)。我有一个要求,我必须在右键单击时突出显示选定的行。我用来突出显示的代码如下:
String highlightedText = textArea.getSelectedText();
if(highlightedText != null)
{
try{
int index = textArea.getText().indexOf(highlightedText, textArea.getCaretPosition());
textArea.getHighlighter().addHighlight(index - 1, index + highlightedText.length(),
new DefaultHighlighter.DefaultHighlightPainter(Color.ORANGE));
}catch (BadLocationException ex) {
}
}
虽然右键单击时的突出显示有效,但问题是在存在重复项的情况下我无法获得所选行的索引。所以如果有像
AAAA
BBBB
AAAA
CCCC
DDDD
AAAA
当用户尝试突出显示此特定行时,我无法获得第二个“AAAA”的索引。有人可以帮我提出一个想法/建议来解决这个问题吗?谢谢!