2012-01-03 5 views
3

私はGUIの辞書プログラムを作っており、表示されている各単語でハイライトされる必要がある文字の入力を持っています。私はこれをどうやって行うのだろうかと思っていました.JTextArea全体を色づけするのは難しくありませんが、特定の文字だけを着色するのはもう少し難しいようです。私はスタイル付きフォントを使用できるJTextPaneについて読んだことがありますが、それは単純ではないようです。私はすべての辞書の単語の文字を解析し、その文字の色を変更する必要があります。Javaの着色文字GUI

+0

この[example](http://stackoverflow.com/a/8534162/230513)も参照してください。 – trashgod

答えて

5

はい、この種の処理を行うには、JEditorPaneまたはJTextPaneを使用します。あなたが見たようにスタイルを使用することもできますし、コンテンツをHTMLとして作成して表示することもできます。柔軟性が低い場合は、ずっと簡単です。

Javaチュートリアルの関連セクションがhere.

2

を開始独自のハイライトを追加することができます。 DefaultHighlighterとHighlightPainterを参照してください。

http://java-sl.com/tip_vertical_selection.htmlのカスタムハイライトの例を参照してください。任意の色を定義できます。