本文介绍了Java默认荧光笔的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用DefaultHightlighter.DefaultHightlighterPainter
突出显示Java文本窗格中的文本.我想删除所有突出显示(突出显示可能不止一个字符串),并希望它返回已删除突出显示的字符串的位置,所以显然我不能使用pseudoCodeTextPane.getHighlighter().removeHighlight(highlight);
Im using the DefaultHightlighter.DefaultHightlighterPainter
to highlight text within a java text pane.I want to remove all highlights (there could be more than one string highlighted) and want it to return the locations of the strings where the highlight has been removed, so obviously I cant usepseudoCodeTextPane.getHighlighter().removeHighlight(highlight);
任何人都可以帮忙吗?谢谢
Can anyone help?Thanks
推荐答案
类似的东西
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
这篇关于Java默认荧光笔的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!