我試圖更改TextArea或TextPane或任何其他突出顯示的顏色。JTextArea或JTextPane設置突出顯示的文本顏色
請注意,我在尋找改變的顏色:
,而不是文字。
我也看了看在JTextArea
的setHighlighter()
功能,但似乎我需要輸入一個匿名Highlighter
類,我完全不知道如何實現全部覆蓋。
jta.setHighlighter(new Highlighter() {
@Override
public void removeHighlight(Object tag) {
// TODO Auto-generated method stub
}
@Override
public void removeAllHighlights() {
// TODO Auto-generated method stub
}
@Override
public void paint(Graphics g) {
// TODO Auto-generated method stub
}
@Override
public void install(JTextComponent c) {
// TODO Auto-generated method stub
}
@Override
public Highlight[] getHighlights() {
// TODO Auto-generated method stub
return null;
}
@Override
public void deinstall(JTextComponent c) {
// TODO Auto-generated method stub
}
@Override
public void changeHighlight(Object tag, int p0, int p1)
throws BadLocationException {
// TODO Auto-generated method stub
}
@Override
public Object addHighlight(int p0, int p1, HighlightPainter p)
throws BadLocationException {
// TODO Auto-generated method stub
return null;
}
});
您是否嘗試過在'paint(Graphics g)'方法中設置?像'g.setColor(Color.color);' – 3kings
剛剛嘗試過,它們只突出顯示文字。在您取消突出顯示後,它們也不會取消突出顯示文字 –
請嘗試下面的答案,以幫助您更多 – 3kings