JavaSwingJTextArea中的重定向的彩色java控制台有可能吗?

ergxz8rk  于 2021-06-29  发布在  Java
关注(0)|答案(1)|浏览(403)

我成功地重定向了 System.out 以及 System.err 到jtextarea,请参阅本文:https://www.codejava.net/java-se/swing/redirect-standard-output-streams-to-jtextarea.
但这两种类型的消息都以相同的字体颜色显示。我希望system.err消息以红色显示,system.out消息以定义的前景色显示(当前为白色)。有可能吗?

2vuwiymt

2vuwiymt1#

不,这是不可能的。jtextarea是一个简单的文本组件,它只能显示一种字体和一种字体颜色。如果需要更复杂的组件,则需要使用更复杂、功能更强大(而且更难使用)的组件,例如jtextpane或jeditorpane。
另一个选项是使用jlist来显示系统中的文本,并给它一个渲染器,它知道用黑色显示正常消息,用红色显示错误消息。可以使其看起来像jtextarea,但是如果单个消息占用多行,则会有一些困难。

相关问题