Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

JTextAreaの行間設定について

こんにちわ
質問をさせて頂きます。
JTextAreaを使用しているのですが、行間を狭めることはできるのでしょうか。

6

回答

82451

閲覧

6件の回答

評価

0

JTextArea 行間
でグーグル先生で検索すると、
トップにヒットします。

評価

0


お返事ありがとうございます。
このページもみたのですが、複数行の表示ができるということを説明しているページでした。
複数行表示をした際に、それぞれの行間を狭める方法を探しています。
結構さがしたつもりですが、いまだ見つかってません。
どうぞ、引き続きよろしくおねがいします。

評価

0

複数行を表示できることを説明しているというより、JTextPane,JTextArea,JLabelの違いを説明している感じですね。

JTextPaneではだめなの?

評価

0

Rさんありがとうございます。
JTextPaneも検討したのですが、自動改行が簡単にはいかないようなんですよね。

JTextPane:行間設定は楽。自動改行は難
JTextArea:自動改行は楽。行間設定は難

という感じのようです。

評価

0

JTextPaneで自動改行されますよ。

設定されているレイアウトによっては、自動改行しないで、コンポーネントのサイズが拡張される場合があるので、

setPreferredSize
setMaximumSize
setMinimumSize

などを使ってサイズ指定してあげるといいと思いますよ。

評価

0

原因はjavax.swing.text.PlainView#paint(Graphics g, Shape a)の、
        int fontHeight = metrics.getHeight();
        〜
        y += fontHeight;
だと思われ。

PlainViewを継承してもFontMetricsを継承しても、IllegalAccessErrorになった。
JTextArea#getFontMetrics(Font font)をオーバーライドしたらStackOverflowErrorになった。ループしたんだろう。


>JTextPaneで自動改行されますよ。
setWrapStyleWord(boolean)のことだと思われ。
これはJTextPaneにない。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。