JTextAreaのgetLineCount関数の戻り値に基づいてScrollPaneに高さを設定しようとしています。 Dimension of ScrollPaneで値を高さに設定すると、それは本当に小さいです。私は* 20を追加して、私が期待しているものに最も近い結果を得ました。 しかし、このトリックでは、getLineCountの数値が高いほど精度は低くなります。これは、JScrollPaneの高さが私が望むものよりも大きくなることを意味します。JTextArea行数の値をDimension height_JAVAに変換する方法
これらの間のメトリックを変換するには、式が必要です。しかし、私はint値であることを除いて、どのメトリックが返されているのか正確には分かりません。
これら2つを変換する組み込みのライブラリがある場合は、同様に便利かもしれません。 この問題に関するオンライン投稿は多くありません。誰もこの問題に遭遇しましたか?
int height= textArea.getLineCount();
JScrollPane scrollPane = new JScrollPane(textArea);
scrollPane.setPreferredSize(new Dimension(1, height* 20));
この点は何ですか?スクロールペインのサイズをテキスト領域のサイズに変更しようとすると、スクロールペインは必要ありません。 – camickr
['JTextArea#setRows'](https://docs.oracle.com/javase/8/docs/api/javax/swing/JTextArea.html#setRows-int-) – MadProgrammer
@camickr質問をよくしています。私は、一般的に、スクロールペインに一定の高さを設定するのは無意味だと知っています。しかし、JTextAreaの全文を見るには、この段階で一定の高さを設定する必要があります。将来、特定の高さに縮小する機能を実装します。縮小されたら、スクロールペインでスクロールバーを使用します。将来の実装を容易にするために、私はこの段階でスクロールバーを無効にしてスクロールペインを使用します。 –