0

私のプログラムにはもともと JTextAreas がありましたが、文字の行間の間隔を変更する必要があるときは、JTextPanes を使用せざるを得ませんでした。しかし、JTextPane にはデフォルトで境界線がなく (JTextAreas とは異なり)、いくつかの視覚的な点で JTextAreas とは異なります。

JTextArea 境界線を JTextPane に設定することについてはすでに質問しましたが、パッケージ全体を完全に作り直しています。明確にするために、Nimbus LAFを使用しています。

私の質問は、JTextPane のように機能するが JTextArea のように見えるコンポーネントを作成するにはどうすればよいかということです。

1 つの方法は、JTextArea を作成し、JTextPane のように動作するように「再トレーニング」することです (ほとんどありそうにないと思います)。もう 1 つの方法は、JTextPane を作成し、JTextArea のように見えるように「再描画」することです。

私はUIDefaultsなどを楽しんでいると思います...

これが可能かどうかはわかりません。可能であれば、変更する必要があるキー (JTextArea と JTextPane の間で値が異なるキー) を知りたいです。または、少なくともどのように判断できますか?彼ら。

非常に重要なことの 1 つは、JTextComponent にフォーカスがあることを確認する必要があることです。それをペイントして、通常の JTextArea のように見せる必要があります。

これをすべて達成する方法はありますか?

4

1 に答える 1

1

視覚的にはまったく違うとは思いませんでした。どちらも青っぽい背景に白い箱だけじゃないの?

いずれにせよ、jTextArea1.setBorder(Border b)メソッドを使用して境界線を変更できます。適用できる境界線の種類には、約 8 つのオプションがあります。

于 2012-10-11T23:55:26.477 に答える