Java默认荧光笔

问题描述:

使用DefaultHightlighter.DefaultHightlighterPainter来突出显示java文本窗格中的文本。 我想删除所有亮点(可能有不止一个字符串高亮显示),并希望它返回其中的亮点已被删除字符串的位置,所以很明显我不能使用 pseudoCodeTextPane.getHighlighter().removeHighlight(highlight);Java默认荧光笔

谁能帮助? 感谢

+1

请编辑您的问题,并张贴在这里与Hightlighter demonstate您的问题(一个或多个)http://sscce.org/ – mKorbel 2012-01-31 10:58:43

如何像

Highlighter.Highlight[] highlights = pseudoCodeTextPane.getHighlighter().getHighlights(); 
int[] startOffsets = new int[highlights.length]; 
int[] endOffsets = new int[highlights.length]; 
for (int i = 0; i < highlights.length; ++i) { 
    startOffsets[i] = highlights[i].getStartOffset(); 
    endOffsets[i] = highlights[i].getEndOffset(); 
} 
pseudoCodeTextPane.getHighlighter().removeAllHighlights(); 
// now do whatever processing you want to do with the highlight locations 

如果删除所有亮点(我想与removeAllHighlights),你可以getHighlights之前和使用您那里收到的信息。