点击上方蓝色字关注我们~
我们知道在PyQt5中,耗时任务需要通过多线程的方式来完成,这样界面才不会处于无响应状态。而且很多时候我们还需要将界面上用户输入的内容传给线程,好让线程能够完成工作。那么我们要怎么将界面上的控件内容传过去呢?看完这节教程就知道了。
比方说我们要爬取一个网址,而该网址来自于用户输入,我们现在的任务就是让子线程能够获取到该网址文本。
代码如下:
import sysfrom PyQt5.QtCore import QThreadfrom PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QLineEdit, QLabel, QVBoxLayout, QHBoxLayoutclass Demo(QWidget): def __init__(self): super(Demo, self).__init__() self.line = QLineEdit() self.btn = QPushButton('开始爬取') self.btn.clicked.connect(self.start_slot) h_layout = QHBoxLayout() v_layout = QVBoxLayout() h_layout.add