Java教程

java – JTextArea在其他JFrame中显示实时控制台输出

本文主要是介绍java – JTextArea在其他JFrame中显示实时控制台输出,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

Gui显示控制台打印,使用了重定向

private void redirectSystemStreams() {
    OutputStream out = new OutputStream() {
        @Override
        public void write(int b) throws IOException {
            updateTextArea(String.valueOf((char) b));
        }

        @Override
        public void write(byte[] b, int off, int len) throws IOException {
            updateTextArea(new String(b, off, len));
        }

        @Override
        public void write(byte[] b) throws IOException {
            write(b, 0, b.length);
        }
    };

    System.setOut(new PrintStream(out, true));
    System.setErr(new PrintStream(out, true));
}
private void updateTextArea(final String text) {
    try {
        SwingUtilities.invokeAndWait(new Runnable() {
            @Override
            public void run() {
                txt_console.append(text);
            }
        });
    } catch (InterruptedException ex) {
    } catch (InvocationTargetException ex) {
    }
}

本页面仅作备案,详细请看参考

参考:http://itpcb.com/a/362920

这篇关于java – JTextArea在其他JFrame中显示实时控制台输出的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!