Подпроцесс Tkinter блокирует графический интерфейс и не возвращает стандартный вывод в текст

Я боролся с Tkinter некоторое время и исчерпал большинство ресурсов, которые у меня есть, чтобы сослаться на это. Здесь я нашел пару похожих тем, но ни одна из них не привела меня туда, где я должен быть.

У меня есть долго работающий скрипт на Python, и я надеялся создать графический интерфейс для взаимодействия с ним. В настоящее время я пытаюсь передать данные из CLI обратно в GUI, но не могу получить какие-либо данные, и GUI блокируется при вызове подпроцесса.

Я довольно новичок в Python и переполнении стека, поэтому прошу прощения, если я пропустил что-то глупое или не задал вопрос правильно.

import Tkinter
from Tkinter import *
import subprocess
import sys


top = Tkinter.Tk()

def startScript():
   root = Tk()

   cli = subprocess.Popen(['python.exe', 'aScript.py'], shell=False, stdout=subprocess.PIPE)
   root.update()

   while True:
       line = cli.stdout.readline()
       if line == '' and process.poll() is not None:
           break
       print line
       t.insert(tk.END, line)


B = Tkinter.Button(top, text ="Start Script", command = startScript)

B.pack()
top.mainloop()

Ответы на вопрос(0)

Ваш ответ на вопрос