2012-02-01 22 views
5

私はJTextAreaのテキストに情報の文字列を設定しています。Java - JTextAreaのテキストを色に設定する

"Result: <html><font color=red>" + negativeValue + "</font></html>" 

は、私は、これは結果を与えることを期待:情報のこの文字列では、私は次のようにこれを行うために、私は、文字列を編集し、私は赤色たい変数を持って##数は赤です。しかし、それは単なるテキストエリアに次のようになります:

Result: <html><font color=red>##</font></html> 

私はこの作業を取得する方法が本当にわからないので、誰かがこれを行う方法のようなアドバイスを提供することができますか?

+2

それがスタイルテキストコンポーネントに入れて1 – mKorbel

答えて

8

JTextAreaは、スタイル付きテキスト用に設計されたコンポーネントではありません。テキストがすべて1色の場合は、setForeground(Color)に電話してください。

それ以外の場合は、JEditorPaneJTextPaneなどのスタイル付きテキストコンポーネントを使用します。詳細はこちらそれらを使用して、How to Use Editor Panes and Text Panesを参照してください。

また、Stringは、<html>で始まる必要があります。

+1

またはハイライト+1を使用 – mKorbel

1

メモリが使用されている場合、JTextAreaはプレーンテキスト表示専用です。 HTMLの場合、JEditorPaneまたはそのサブクラスの1つを使用する必要があります。

0

Javaは、<html>で始まる場合のみ、htmlコードをレンダリングします。それを試してみてください

"<html>Result: <font color=red>" + negativeValue + "</font></html>" 
+2

..and場合にのみ、良い質問。 ;) –

1

あなたはJTextAreaでHTMLを使用することはできませんが、あなたがJEditorPaneのかJTextPaneのインスタンスを必要とするHTMLをレンダリングするために、スタイルのテキスト領域をサポートしていませんJEditorPane

関連する問題