我目前有一个程序,以各种方式打印文本行,如'System.out.println()'语句和循环打印数组中的所有元素到屏幕.
我现在正在为这个程序添加一个GUI.我的问题是我想将打印到eclipse控制台的所有内容打印到我的GUI中的文本框中.这是可能的,如果是这样,我将如何做到这一点.
提前致谢.
查看这篇题为" 将System.out和System.err重定向到JTextPane或JTextArea"的博客文章.它几乎描述了您需要的一切.
基本思想是您创建自己的专用输出流.在您的write()
方法实现中,您调用一些代码将新数据附加到文本框中.然后,System.out
通过调用System.setOut()
或将此新输出流设置为System.setErr()
.
注意:该文章缺少一件事.您需要在一个单独的线程中启动您的程序.
一个主意:
创建自己的PrintStream,将所有内容输出到此文本框.然后将此新PrintStream设置为标准输出流,如下所示:
System.setOut(myPrintStream());