pyqt 在读取文件时没有响应

pyqt not responding during reading a file

我使用 PyQt 的 GUI 在我读取文件和计算输出的过程中显示没有响应,这将显示在 QWidget 的 table 中。

因此读取文件中的行需要几秒钟,我应该为用户找到比 "not responding" 更好的解决方案。有没有办法绕过它或者可能是一个等待符号来通知用户它正在工作。

谢谢大家!

对于单线程应用程序,不可能同时做两件事:读取文件和处理 GUI。

尝试使用多线程。看看这个:https://docs.python.org/3/library/threading.html
或这个: https://docs.python.org/3/library/_thread.html

另请查看为 https://www.learnpyqt.com/courses/concurrent-execution/multithreading-pyqt-applications-qthreadpool/

指定的页面

以及GUI应用多线程Whosebug的解释: Explanation of need for Multi Threading GUI programming

多线程的一个小例子python:

def readingAFile(path):
    doSomething()
    showTheDataToGUI()

def main():
    _thread.start_new_thread(readingAFile, (filePath, ))