Rumah > Java > javaTutorial > Bagaimana untuk Mengalihkan Output Konsol ke TextArea dalam GUI?

Bagaimana untuk Mengalihkan Output Konsol ke TextArea dalam GUI?

Patricia Arquette
Lepaskan: 2024-11-02 17:18:29
asal
500 orang telah melayarinya

How to Redirect Console Output to a TextArea in a GUI?

Mengubah hala Output ke TextArea dalam GUI

Dalam antara muka pengguna grafik (GUI), adalah perkara biasa untuk memaparkan output yang biasanya dicetak ke konsol di kawasan yang ditetapkan dalam antara muka. Ini memberikan pengalaman yang lebih mesra pengguna dengan menyimpan semua output dalam tetingkap aplikasi.

Untuk mencapai ini, anda perlu mengubah hala strim cetakan program anda kepada strim yang boleh anda kawal dalam GUI. Satu pendekatan melibatkan mencipta strim output tersuai yang menangkap output dan memaparkannya dalam TextArea yang dikehendaki.

Contoh Pelaksanaan

Berikut ialah contoh cara melaksanakan pendekatan ini:

<code class="java">public class GUIOutputRedirection {

    private TextArea textArea;
    private PrintStream originalPrintStream;

    public GUIOutputRedirection(TextArea textArea) {
        this.textArea = textArea;
        originalPrintStream = System.out;
    }

    public void redirectOutput() {
        PrintStream stream = new PrintStream(new OutputStream() {

            @Override
            public void write(byte[] b, int off, int len) {
                String text = new String(b, off, len);
                textArea.append(text);
                originalPrintStream.write(b, off, len);
            }

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

            @Override
            public void write(int b) {
                byte[] b1 = new byte[1];
                b1[0] = (byte) b;
                write(b1, 0, 1);
            }
        });

        System.setOut(stream);
    }

    // ...
}</code>
Salin selepas log masuk

Dalam contoh ini, PrintStream baharu ditakrifkan yang membungkus TextArea dan strim cetakan asal. Apabila anda menulis ke strim baharu, output dihantar ke TextArea dan konsol.

Untuk menggunakan pelaksanaan ini, buat contoh kelas GUIOutputRedirection, nyatakan TextArea sasaran dan panggil redirectOutput() kaedah:

<code class="java">GUIOutputRedirection redirection = new GUIOutputRedirection(textArea);
redirection.redirectOutput();</code>
Salin selepas log masuk

Dengan persediaan ini disediakan, sebarang output yang biasanya pergi ke konsol kini akan dipaparkan dalam TextArea yang ditetapkan dalam GUI.

Atas ialah kandungan terperinci Bagaimana untuk Mengalihkan Output Konsol ke TextArea dalam GUI?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan