代码之家  ›  专栏  ›  技术社区  ›  hbprotoss

来自QObject和QRunnable错误的多重继承

  •  4
  • hbprotoss  · 技术社区  · 13 年前

    我正在使用pyqt4。 我有一个多继承自QObject和QRunnable的类,如下所示:

    class DownloadTask(QObject, QRunnable):
        def __init__(self):
            QObject.__init__(self)
            QRunnable.__init__(self)
            self.setAutoDelete(False)
    

    当DownloadTask的实例正在初始化时,最后一行抛出异常:

    TypeError: could not convert 'DownloadTask' to 'QRunnable'
    

    但我认为在语法中是正确的,QRunnable有setAutoDelete方法。为什么它不能转换为QRunnable?

    更新:
    我打算使用QThreadPool来管理从互联网下载资源的多线程,并在完成后发出信号。我该怎么做?

    1 回复  |  直到 13 年前
        1
  •  7
  •   Janne Karila    13 年前

    PyQt reference guide > Things to be Aware Of > Multiple inheritance:

    不可能定义一个新的Python类来从多个Qt类中进行子类。