今天小编就为大家分享一篇浅谈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_())
总体来说:
-
首先实例化APP
<