python QThread
时间: 2024-06-14 19:07:43 浏览: 17
QThread是PyQt5中的线程类,用于在GUI应用程序中实现多线程操作。通过继承QThread类并重写其run()函数,可以创建自定义的线程类。在run()函数中,可以编写需要在子线程中执行的代码逻辑。以下是一个简单的示例:
```python
from PyQt5.Qt import QApplication, QWidget, QPushButton, QThread
import sys
import time
# 继承QThread类创建自定义线程类
class MyThread(QThread):
def __init__(self):
super().__init__()
def run(self):
# 在子线程中执行的代码逻辑
for i in range(5):
print(i)
time.sleep(0.5)
# 创建GUI应用程序
app = QApplication(sys.argv)
window = QWidget()
# 创建按钮并连接槽函数
button = QPushButton("Start Thread", window)
button.clicked.connect(lambda: thread.start())
# 创建自定义线程对象
thread = MyThread()
# 显示窗口
window.show()
sys.exit(app.exec_())
```
在上述示例中,我们创建了一个自定义的线程类MyThread,继承自QThread。在run()函数中,我们使用for循环打印数字,并使用time.sleep()函数模拟线程执行的耗时操作。然后,我们创建了一个GUI应用程序,并在窗口中添加了一个按钮,点击按钮时启动线程。最后,通过调用app.exec_()运行应用程序。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)