python pyqt5 定义QtCore.QThread,并传入一个参数
时间: 2023-05-27 07:06:10 浏览: 113
以下是一个示例代码,其中参数为字符串类型:
```
from PyQt5.QtCore import QThread, pyqtSignal
class MyThread(QThread):
finished = pyqtSignal()
def __init__(self, param):
super().__init__()
self.param = param
def run(self):
# do some work with self.param
self.finished.emit()
```
在上面的代码中,我们定义了一个名为 `MyThread` 的 `QThread` 子类,并定义了一个 `finished` 信号。在 `__init__` 方法中,我们接收并存储一个参数 `param`,在 `run` 方法中,我们可以使用这个参数来执行一些工作。最后,我们发出 `finished` 信号以通知其他部分该线程已完成。
要创建并启动该线程,可以执行以下代码:
```
thread = MyThread('some_param')
thread.finished.connect(some_function)
thread.start()
```
在这里,我们创建了一个名为 `thread` 的 `MyThread` 实例,并将参数 `'some_param'` 传递给它。我们还将 `finished` 信号连接到名为 `some_function` 的函数,并开始运行该线程。
阅读全文