寻找一个高效的基于Java Swing的控制台

我正在寻找一个高效的Swing Java组件,我可以将其插入到我的应用程序UI中。 我已经尝试过使用Swing中的类,比如JTextArea,但是没有用; 他们只是不够高性能,并有任何严重的缺点。 此外,如果它具有标准控制台function,如滚动锁定,清除控制台,颜色等等,那就太好了。

编辑:忘了说,这个控制台会有很多调试信息流入它,它需要完全可滚动。

干杯,
克里斯

我没有看到使用JTextPane有什么问题。 它支持在将每段文本添加到控制台时可以指定的属性。 清除它显然也是一件容易的事情。 添加到滚动窗格时,它还支持滚动。

您可以使用智能滚动添加滚动锁定。

另外,它过早地删除了文本

不知道这意味着什么,因为文本永远不会被删除,除非你专门从文档中删除它。

在输入输入时(afaik)不允许用户滚动。 结果是,当行数保持不变时,您只看到文本闪烁。

默认情况下,文本会在文本附加到文档时自动滚动,假设代码在EDT上执行。 可以通过上面链接中提供的示例来控制此滚动。

编辑:

但我仍然喜欢图书馆解决方案

我不知道

来自不同流的自动着色文本

消息控制台可能会给您一些想法。

(即,在一行上检测[错误]前缀)并根据此颜色对行进行着色)

通过将DocumentFilter添加到文本窗格的Document,可以轻松完成此操作。 您可以在文本插入文档时添加属性。

请务必阅读有关事件调度线程(EDT)的信息 !

顺便说一句:一个简单的搜索’java swing console’会给你很多提示,或者你可以使用/改编beanhell 文本字段 ,这也是一个jtextfield …