用两个LABEL控件,一个是正确的,一个是错误的就行了~~~

解决方案 »

  1.   

    是啊,一个LABEL就只能有一种样式
      

  2.   

    如果必须要求使用JTextPane控件呢?请大家多帮忙啊!!!!!!
      

  3.   

    public void displayMessage(String msg){
        String str = mConfig.getErrorMessage(msg);
        int pos = 0;
        String txt = msgtextPane.getText();
        if(!str.equals(""))
          txt +=str+"\n";
        else
          txt += msg+"\n";    String items []= txt.split("\n");
        msgtextPane.setText(txt);
        for(int loop=0;loop<items.length;loop++){
          String txtTemp=items[loop];
                   if(txtTemp.endsWith(" "))
          {
            setTextColor(msgtextPane,pos,txtTemp.length(),Color.red);
            pos+=txtTemp.length()+1;
          }
          else{
            setTextColor(msgtextPane,pos,txtTemp.length(),Color.blue);
            pos+=txtTemp.length()+1;
          }
        }  }
      

  4.   

    给你个显示不同颜色文字的例子:import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.text.*;public class Test {
      JFrame frame;
      JTextPane textPane;  public Test(){
        frame = new JFrame("JTextPane");
        textPane = new JTextPane();
        setAttr("第一行的文字",Color.red,false,12);
        setAttr("第二行的文字",Color.BLACK,true,25);
        setAttr("第三行的文字",Color.BLUE,false,20);
        frame.getContentPane().add(textPane, BorderLayout.CENTER);
        frame.addWindowListener(new WindowAdapter() {
          public void windowClosing(WindowEvent e) {
            System.exit(0);
          }});
        frame.setSize(200,300);
        frame.setVisible(true);
      }
      /**
       * 插入文字
       * @param str 字符串
       * @param attrSet 字符串详细描述
       */
      public void insert(String str, AttributeSet attrSet) {
        Document doc = textPane.getDocument();
        str = str + "\n";
        try {
          doc.insertString(doc.getLength(), str, attrSet);
        }
        catch (BadLocationException e) {
          System.out.println("BadLocationException: " + e);
        }
      }
      /**
       * 简单的设置文字使用的样式
       * @param str 字符串
       * @param col 颜色
       * @param bold 是否粗体,true为粗
       * @param fontSize 字体大小
       */
      public void setAttr(String str,Color col,boolean bold,int fontSize) {
        SimpleAttributeSet attrSet = new SimpleAttributeSet();
        StyleConstants.setForeground(attrSet, col);
        StyleConstants.setBold(attrSet, bold);
        StyleConstants.setFontSize(attrSet, fontSize);
        insert(str, attrSet);
      }  public static void main(String[] args) {
        new Test();
      }
    }