web-dev-qa-db-ja.com

JTextAreaまたはJTextPaneのテキストの中央揃え-水平方向のテキストの配置

JTextFieldのように、JTextAreaの水平方向に中央揃えのテキストを作成する方法はありますか?

setHorizontalAlignment(JTextField.CENTER);

複数行のテキスト領域で同じことを達成する方法はありますか? JTextAreaでメソッドを見つけることができないので、別のオプションがありますか? JTextPane?もしそうなら、どのように?

29
Awaken

JTextPaneを使用し、属性を使用する必要があります。以下は、すべてのテキストを中央に配置する必要があります。

StyledDocument doc = textPane.getStyledDocument();
SimpleAttributeSet center = new SimpleAttributeSet();
StyleConstants.setAlignment(center, StyleConstants.ALIGN_CENTER);
doc.setParagraphAttributes(0, doc.getLength(), center, false);

編集:

私の知る限り、垂直方向のセンタリングはサポートされていません。役に立つと思われるコードを次に示します。 JTextPaneの垂直方向の配置

60
camickr