没有合适的资源?快使用搜索试试~ 我知道了~
心得:写着写着找到了自己的感觉,还是需要大量的代码和项目来加深对代码的理解 一、PyQt5多线程防卡死 在界面中,通常用会有一些按钮,点击后触发事件,比如去下载一个文件或者做一些操作,这些操作会耗时,如果不能及时结束,主线程将会阻塞,这样界面就会出现未响应的状态,因此必须使用多线程来解决这个问题。 # -*- coding: UTF-8 -*- """"================================================= @Project -> File :Django @IDE :PyCharm @Author :爱跳水的温文尔雅的laughing @Da
资源推荐
资源详情
资源评论
PyQt5多线程防卡死和多窗口用法的实现多线程防卡死和多窗口用法的实现
心得:写着写着找到了自己的感觉,还是需要大量的代码和项目来加深对代码的理解
一、一、PyQt5多线程防卡死多线程防卡死
在界面中,通常用会有一些按钮,点击后触发事件,比如去下载一个文件或者做一些操作,这些操作会耗时,如果不能及时结
束,主线程将会阻塞,这样界面就会出现未响应的状态,因此必须使用多线程来解决这个问题。
# -*- coding: UTF-8 -*-
""""=================================================
@Project -> File :Django
@IDE :PyCharm
@Author :爱跳水的温文尔雅的laughing
@Date :2020/4/2 21:56
@Desc :
=================================================="""
from PyQt5.QtCore import pyqtSignal, QThread
from PyQt5.QtWidgets import QWidget, QMainWindow, QApplication
from untitled import Ui_MainWindow
import sys
import time
class Example(QThread):
signal = pyqtSignal(str) # 括号里填写信号传递的参数
def __init__(self):
super(Example, self).__init__()
def __del__(self):
self.wait()
def run(self):
"""
进行任务操作,主要的逻辑操作,返回结果
"""
for i in range(10):
time.sleep(0.5)
self.signal.emit(str("hello world"+str(i))) # 发射信号
class MyWindows(QMainWindow, Ui_MainWindow):
def __init__(self):
super(MyWindows, self).__init__()
self.setupUi(self)
self.pushButton.clicked.connect(self.buttonClick)
# 点击事件启动线程
def buttonClick(self):
self.thread = Example()
self.thread.signal.connect(self.callback) #连接回调函数,接收结果
self.thread.start() # 启动线程
def callback(self, msg):
self.lineEdit.setText(str(msg))
if __name__ == '__main__':
app = QApplication(sys.argv)
mywindow = MyWindows()
mywindow.show()
sys.exit(app.exec_())
点击之后显示会从1到9,逻辑运行在子线程,前端显示在主线程
资源评论
weixin_38664159
- 粉丝: 5
- 资源: 921
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于Kotlin语言的Android开发工具类集合源码
- 零延迟 DirectX 11 扩展实用程序.zip
- 基于Java的语音识别系统设计源码
- 基于Java和HTML的yang_home766个人主页设计源码
- 基于Java与前端技术的全国实时疫情信息网站设计源码
- 基于鸿蒙系统的HarmonyHttpClient设计源码,纯Java实现类似OkHttp的HttpNet框架与优雅的Retrofit注解解析
- 基于HTML和JavaScript的廖振宇图书馆前端设计源码
- 基于Java的Android开发工具集合源码
- 通过 DirectX 12 Hook (kiero) 实现通用 ImGui.zip
- 基于Java开发的YY网盘个人网盘设计源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功