Can anybody help me with simple log, I have to add at first line on JTextPane log messages with chosen color ( green ok, red failure ). How to achieve this ?
Asked
Active
Viewed 5.2k times
3 Answers
34
This will print out "BLAH BLEG" in two different colors.
public class Main {
public static void main(String[] args) {
JTextPane textPane = new JTextPane();
StyledDocument doc = textPane.getStyledDocument();
Style style = textPane.addStyle("I'm a Style", null);
StyleConstants.setForeground(style, Color.red);
try { doc.insertString(doc.getLength(), "BLAH ",style); }
catch (BadLocationException e){}
StyleConstants.setForeground(style, Color.blue);
try { doc.insertString(doc.getLength(), "BLEH",style); }
catch (BadLocationException e){}
JFrame frame = new JFrame("Test");
frame.getContentPane().add(textPane);
frame.pack();
frame.setVisible(true);
}
}
Look here: Style Tutorial
and check the section labeled: An Example of Using a Text Pane for a great example of how to dynamically change the colors.
10
for JTextPane you can implements StyledDocument some examples for that on http://www.java2s.com/Code/Java/Swing-JFC/TextPane.htm
![](../../users/profiles/714968.webp)
mKorbel
- 108,320
- 17
- 126
- 296
-
1+1 for being the first poster to link to the Swing tutorial which contains a working example that uses Styles. – camickr May 20 '11 at 15:26
0
You can use HTML for that and then do
textPane.setContentType("text/html");
![](../../users/profiles/-1.webp)
Community
- 1
- 1
![](../../users/profiles/4293998.webp)
Kai Arakawa
- 187
- 1
- 1
- 13