import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.text.*;
import java.io.*;public class Test {
  JFrame frame;
  JTextPane textPane;  public Test(){
    frame = new JFrame("JTextPane");
    textPane = new JTextPane();
    setDocs("第一行的文字",Color.red,false,20);
    setDocs("第二行的文字",Color.BLACK,true,25);
    setDocs("第三行的文字",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);
  }  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);
    }
  }  public void setDocs(String str,Color col,boolean bold,int fontSize) {
    SimpleAttributeSet attrSet = new SimpleAttributeSet();
    StyleConstants.setForeground(attrSet, col);
    if(bold==true){
      StyleConstants.setBold(attrSet, true);
    }
    StyleConstants.setFontSize(attrSet, fontSize);
    insert(str, attrSet);
  }  public static void main(String[] args) {
    new Test();
  }
}