概要

JTextPaneStyledDocumentが使用するパラグラフ属性として、タブストップが展開する文字数を設定します。Swing (Archive) - tabsize in JTextPaneからの引用です。

サンプルコード

textpane.setFont(new Font(Font.MONOSPACED, Font.PLAIN, 12));
FontMetrics fm = textpane.getFontMetrics(textpane.getFont());
int charWidth = fm.charWidth('m');
int tabLength = charWidth * 4;
TabStop[] tabs = new TabStop[10];
for (int j = 0; j < tabs.length; j++) {
  tabs[j] = new TabStop((j + 1) * tabLength);
}
TabSet tabSet = new TabSet(tabs);
SimpleAttributeSet attrs = new SimpleAttributeSet();
StyleConstants.setTabSet(attrs, tabSet);
int l = textpane.getDocument().getLength();
textpane.getStyledDocument().setParagraphAttributes(0, l, attrs, false);
view all

解説

JTextAreasetTabSizeメソッドでタブサイズを指定することができますが、JTextPaneでは、左揃えのTabStopTabSetを作成しタブサイズを指定します。

参考リンク

コメント