在JTextPane中更改文本模式的颜色

时间:2014-07-13 21:18:22

标签: java swing jpanel jtextpane

我有一个放在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大括号中的文字设置为另一种颜色,比如绿色。

我的研究都没有让我更接近答案。有人可以教我怎么做吗?

0 个答案:

没有答案