我有一个放在JPanel中的JTextPane。之前我使用XPath EXpression从XML文件中获取一些文本来填充窗格。如果它来自源元素,则为红色,如果来自目标元素,则为蓝色。到目前为止一切都很棒。
JTextPane xlf_yField = new JTextPane();
StyledDocument xlf_ydoc = xlf_yField.getStyledDocument();
Style xlf_style2 = xlf_yField.addStyle("BlueStyle", null);
StyleConstants.setForeground(xlf_style2, Color.black);
if ("source".equals(xlf_vartarg2)) {
StyleConstants.setForeground(xlf_style2, Color.red);
}
if ("target".equals(xlf_vartarg2)) {
StyleConstants.setForeground(xlf_style2, Color.blue);
}
try { xlf_ydoc.insertString(xlf_ydoc.getLength(), xlf_vartarg,xlf_style2); }
catch (BadLocationException e){}
StyleConstants.setForeground(xlf_style2, Color.black);
try { xlf_ydoc.insertString(xlf_ydoc.getLength(), "",xlf_style2); }
catch (BadLocationException e){}
因此它可能会在窗格中填充如下文本:
Hello [[start-b]]Mary[[end-b]]. How [[br]] are you?
我想将双sqaure大括号中的文字设置为另一种颜色,比如绿色。
我的研究都没有让我更接近答案。有人可以教我怎么做吗?