TITLE:JTextPaneに修飾した文字列を挿入

Posted by terai at 2004-01-13

JTextPaneに修飾した文字列を挿入

JTextPaneに、スタイル付けした文字列を挿入して、ログ風に表示します。

  • &jnlp;
  • &jar;
  • &zip;

#screenshot

サンプルコード

private void append(final String str, final boolean error) {
  SimpleAttributeSet sas = null;
  if(!error) {
    //sas = new SimpleAttributeSet(jtp.getCharacterAttributes());
    sas = new SimpleAttributeSet();
    StyleConstants.setForeground(sas, Color.RED);
    //StyleConstants.setBold(sas, true);
    //StyleConstants.setFontFamily(sas, "Monospaced");
    //StyleConstants.setFontSize(sas, 32);
  }
  try{
    Document doc = jtp.getDocument();
    doc.insertString(doc.getLength(), str+"\n", sas);
    jtp.setCaretPosition(doc.getLength());
  }catch(BadLocationException e) {}
}

解説

StyleConstantsで文字属性をSimpleAttributeSetに設定し、これを文字列と一緒にDocument#insertStringメソッドを使って挿入しています。

コメント