概要

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

サンプルコード

StyledDocument doc = jtp.getStyledDocument();
Style def = doc.getStyle(StyleContext.DEFAULT_STYLE);
Style error = doc.addStyle("error", def);
StyleConstants.setForeground(error, Color.RED);
// ...

private void append(String str, boolean flg) {
  String style = flg ? StyleContext.DEFAULT_STYLE : "error";
  StyledDocument doc = jtp.getStyledDocument();
  try {
    doc.insertString(doc.getLength(), str + "\n", doc.getStyle(style));
  } catch (BadLocationException e) {
    e.printStackTrace();
  }
}
view all

解説

上記のサンプルでは、以下の手順でJTextPaneにスタイルを設定した文字列を追加しています。

  • JTextPaneからStyledDocumentを取得
  • 予め設定しておいたエラー表示用の文字属性スタイルをStyledDocument#getStyle("error")で取得
  • このスタイルと文字列と合わせてDocument#insertString(...)メソッドで挿入

参考リンク

コメント