# String farbig anzeigen. WIE?



## gondor (12. Okt 2004)

hallo liebe java-gemeinde.

ich würde gerne wissen, wie ich einen String zb. in einem editorPane farbig anzeigen lassen kann.

die sufu ergab leider keine genauen ergebnisse bzw. google hat auch nichts gebracht.

hat wer einen tipp? muss man da mit html-tags arbeiten? wenn ja, wie kann ich html in einem editorPane anzeigen?

wäre sehr über tipps oder links dankbar


----------



## mr1st (12. Okt 2004)

Hast Du schon setForeground(Color c); ausprobiert?
Dabei wird allerdings der ganze Text in der Farbe ausgegeben.

Weiters bringt der Highlighter vielleicht etwas.

MfG


----------



## gondor (12. Okt 2004)

hm, das ist eigentlich nicht mein sinn, da ich bestimmte strings 'hervorheben' möchte.


----------



## meez (12. Okt 2004)

Versuchs mal so:

Jeder String word, wird in text mit Color in textpane hervorgehoben..
Geht aber nur mit JTextpane



```
import javax.swing.*;
import javax.swing.text.*;
import java.awt.*;

String text = ....;
String word = ....;
Color clr = new Color(255,0,0);


JTextPane textpane = new JTextPane();
textpane.setText(text);

StyledDocument doc = textpane.getStyledDocument();
StyleConstants.setForeground(textpane.addStyle("color1", null), clr);
for (int n =0;(n = text.indexOf(word, n)) > -1;n +=  word.length()) {
  doc.setCharacterAttributes(n , word.length(), textpane.getStyle("color1"), true);
}
```


----------



## foobar (12. Okt 2004)

> muss man da mit html-tags arbeiten? wenn ja, wie kann ich html in einem editorPane anzeigen?




```
JEditorPane editor = new JEditorPane("text/html", "<html><h1>hello world</h1></html>");
```


----------

