Da giorni sto facendo ricerche su internet per colorare solo il testo selezionato, ho trovato suggerimenti di metodi che fanno tutt'altro e tutte le discussioni finivano senza una soluzione..
Bene io ho trovato la soluzione grazie ad O'relly.
Questo è il codice se a qualcuno interessa..
codice:
public void setSelectText(Color c){
SimpleAttributeSet aset = new SimpleAttributeSet();
StyleConstants.setFontFamily(aset, resultName);
StyleConstants.setFontSize(aset, resultSize);
StyleConstants.setForeground(aset, c);
if (style==Font.BOLD)
StyleConstants.setBold(aset, true);
if(style==Font.ITALIC)
StyleConstants.setItalic(aset, true);
co.setCharacterAttributes(aset, false);
co.replaceSelection(co.getSelectedText());
}
Dove resultName, resultSize e style sono mie variabili globali, rispettivamente fontFamilyName, size e style.