Как я могу заставить этот метод обновлять GUI в моем цикле?
Я делаю программу, которая запускает несколько команд cmd (USMT и передача файлов)
Он работает нормально, но я получаю только последнюю строку из cmd в моем текстовом поле и только после того, как она завершит операцию. Я хочу, чтобы он напечатал то, что cmd выводит в режиме реального времени.
public void load() throws IOException {
ProcessBuilder builder = new ProcessBuilder(
"cmd.exe", "/c", "cd \"C:\\usmt\" && loadstate.bat");
builder.redirectErrorStream(true);
Process p = builder.start();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while (true) {
line = r.readLine();
if (line == null) { break; }
cOut.setText(line);
System.out.println(line);
}
}