2012-02-24 100 views
1

我有一个包含预定义文本块的JTextPane。我有一个单独的线程,突出显示文本的某些行并定期删除突出显示。java突出显示问题

我使用的高亮: text.getHighLighter().addHighligh(start,end,highlighter) 和使用text.getHighLighter().removeAllHighLights() 和我后,叫text.revalidate()删除。

有时突出部分未被删除?

有人可以看到我遇到的潜在问题吗?

+0

请什么地方错了[Java默认荧光笔(http://stackoverflow.com/questions/9078275/java-default-highlighter) – mKorbel 2012-02-24 11:54:52

+0

请出示演示该问题的SSCCE( btw:不应该需要重新验证) – kleopatra 2012-02-25 13:44:11

回答

0

您是否正在运行代码以突出显示/删除EDT

正如

SwingUtilities.invokeLater(new Runnable(){ 
    @Override 
    public void run(){ 
     text.getHighLighter().removeAllHighLights(); 
    } 
});