没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
浅谈浅谈PyQt5中异步刷新中异步刷新UI和和Python多线程总结多线程总结
今天小编就为大家分享一篇浅谈PyQt5中异步刷新UI和Python多线程总结,具有很好的参考价值,希望对大家有
所帮助。一起跟随小编过来看看吧
目前任务需要做一个界面程序,PyQt是非常方便的选择,QT丰富的控件以及python方便的编程。近期遇到界面中执行一些后
台任务时界面卡死的情况,解决了在这里记录下。
PyQt
PyQt简介简介
PyQt是Qt的python接口,PyQt的文档较少,但接口和函数可以完全参照Qt,继承了Qt中大量的控件以及信号机制,十分方
便。以下简介一个基本的PyQt程序。
- 需要导入的类主要来自三个包需要导入的类主要来自三个包
- from PyQt5.QtWidgets import 常用的控件
- PyQt5.QtCore 核心功能类,如QT,QThread,pyqtSignal
- PyQt5.QtGui UI类,如QFont
- 基础的程序结构:
class Example(QWidget):
def __init__(self):
super()__init__()
self.setupUI()
def setupUI():
self.show()
pass
# 设置UI
if __name__ == '__main__':
app = QApplication(sys.argv) # 启动app
ex = Example() # 实例化一个自己派生的
# 也可以实例化库中的控件
# q = QPushButton()
# q.show()
sys.exit(app.exec_())
总体来说:总体来说:
1. 首先实例化APP
2. 实例化预定义控件或者自己派生自库中的控件,记得调用show()函数
3. 执行并安全退出
Python中的多线程中的多线程
python中的多线程使用较为方便,主要使用threading.Thread类:
1. 线程启动使用start()函数
2. 如果需要等待线程执行使用join,这样主线程会阻塞
实现方式一实现方式一
直接传入函数,启动线程,可以传入参数
import time, threading
def threadFunction():
while True:
print(11111)
time.sleep()
# 用于命名,可以通过threading.current_thread().name获得
t = threading.Thread(target=threadFunction, name='funciton')
# 如果线程有参数
t = threading.Thread(target=threadFunction, args=(), name='funciton')
t.start()
实现方式二实现方式二
资源评论
weixin_38654380
- 粉丝: 6
- 资源: 952
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功