我需要一些帮助或建议,我正在使用pyQT在GUI上编写Python程序,但是我需要将实时子进程命令输出到文本浏览器中,以便用户可以查看是否有任何错误和消息。错误,另选一个进度条,然后插入程序,告诉用户有错误,并且可能保存日志,或者其他可行的方法,我已经在互联网上找到了类似的东西:
process = Popen([command],stdout=PIPE)
while True:
line = process.stdout.readline()
if not line:
break
QtWidgets.QApplication.processEvents()
self.textBrowser.append(str(line.strip()))
而且还可以,但不会在命令完成时实时打印输出,而且在工作时会冻结GUI。
是我遇到的问题的一部分,还有其他问题,我尝试运行的命令会在出现继续错误时要求用户按Enter键,因此,假设所有这些都没有办法在python程序上嵌入终端还是打开新终端并在那里启动命令?这样,用户将实时查看输出和可能的错误,如果有任何错误要继续,请按Enter。
这是用于Linux
有什么想法吗?我将不胜感激任何想法/建议/帮助,谢谢!
考虑将这个漫长的过程放入一个线程中,例如Qthread