JTextPaneでタブサイズを設定

編集者:Terai Atsuhiro
作成日:2005-04-25
更新日:2023-04-10 (月) 00:10:17

概要

JTextPaneでタブサイズを設定します。Java Forums - tabsize in JTextPaneからの引用です。

http://terai.xrea.jp/swing/tabsize/screenshot.png

サンプルコード

textpane.setFont(new Font("monospaced", Font.PLAIN, 12));
FontMetrics fm = textpane.getFontMetrics(textpane.getFont());
int charWidth = fm.charWidth('m');
int tabWidth = charWidth * 4;
TabStop[] tabs = new TabStop[10];
for(int j=0;j<tabs.length;j++) {
  tabs[j] = new TabStop((j+1)*tabWidth);
}
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);

解説

JTextAreaはsetTabSizeメソッドでタブサイズを指定することができますが、JTextPaneでは、サンプルのような方法でタブサイズを指定します。

参考リンク

コメント