3

私は単純なコンソールを作成しようとしていますが、これを見つけました: 「コマンド」コンソールを作成する

私はそれを試してみることにしました、そしてそれは私の必要性にぴったりだと思います. 唯一の問題は、BufferedReader がブロックされているため、ユーザーからユーザー入力を取得できないように見えることです。私は BufferedReader にも JConsole にも精通していないので、何を修正する必要があるかわかりません。

コードの私のバージョンは次のとおりです。

import java.io.*;
import bsh.util.*;
import java.awt.*;

public class CLI extends JConsole
{       
    public CLI()
    {
        Font font = new Font("Consolas", Font.BOLD, 12);
        setFont(font);

        new InputThread().start();
    }

    private class InputThread extends Thread
    {
        BufferedReader input = new BufferedReader(getIn());
        String newline = System.getProperty("line.separator");
        String line = "";
        String prompt = "$ ";

        public void run()
        {
            try
            {
                do
                {
                    print(prompt, Color.RED);
                    line = input.readLine();
                    print("You typed: " + line + newline, Color.BLUE);

                } while (!line.equalsIgnoreCase("quit"));

                input.close();
            }
            catch (IOException e)
            {
                e.printStackTrace();
            }
        }
    }
}
4

0 に答える 0