Question

I am implementing a spellchecker and wondered if there is an easy/obvious way of underlining some text in a different colour such as Red.

I have everything set up and underlining with the following code (also sets the color of the text):

private AttributeSet getAttributeSet(Color foregroundColor) {
    SimpleAttributeSet attrs = new SimpleAttributeSet();
    StyleConstants.setForeground(attrs, foregroundColor);
    StyleConstants.setUnderline(attrs, true);
}

The above code sets the word to blue but also underlines it in blue. I need to be able to change the underline and also its thickness. Any ideas?

Thanks,

Was it helpful?

Solution

Use e.g this http://java-sl.com/tip_colored_strikethrough.html

Just modify it a bit to achieve underline rather than strikethrough.

But from my experience to highlight spellcheck errors it's better to define custom highlight painter

See also http://www.java2s.com/Code/Java/Swing-JFC/JTextPaneHighlightExample.htm

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top