PyQT5教程- 1. 安装

本章目录

  • Part Ⅰ:环境搭建
  • Part Ⅱ:第一个程序

由于工作需要,需要设计个桌面程序,所以起了学习PyQt的念头。
这里一边梳理下学到的内容,一边也贴一些在使用过程中遇到的坑。
环境概述:

  • Win10操作系统
  • Python3.8.10
  • PyCharm

Part Ⅰ:环境搭建

  1. 安装PyQt5
    打开PyCharm下方的terminal,在里面输入
pip install pyqt5 -i https://pypi.douban.com/simple

: 测试下markdown的注释

其中,-i后面的https://pypi.douban.com/simple为国内豆瓣源地址,可大幅度提高下载速度,仅限本次安装,永久方式可自行百度。

  1. ImportError: DLL load failed报错处理
    如果使用PyCharm的venv虚拟环境,运行pyqt项目会报错
ImportError: DLL load failed while importing QtWidgets: 找不到指定的模块。

这是因为虚拟环境缺少一个python3.dll文件,可以在terminal里输入

where python
Python安装目录

找到安装目录下的python3.dll,并将其拷贝的项目venv虚拟环境下的Scripts目录即可解决该错误。


python3.dll

Scripts目录

Part Ⅱ:第一个程序

环境搭建完毕后,可以写个简单的代码庆祝下

import sys
from PyQt5.QtWidgets import QApplication, QLabel


if __name__ == "__main__":
    app = QApplication(sys.argv)  # 初始化一个GUI程序的控制流和管理流
    label = QLabel("Hello World!")  # 初始化一个文本控件并设置文本显示内容
    label.show()  # 设置控件显示
    sys.exit(app.exec())  # 等待app结束后退出程序

程序运行结果如下:


程序运行窗口
  1. QApplication:
    QApplication 继承 QGuiApplication,而 QGuiApplication 继承 QCoreApplication。这三者的区别为:
  • QApplication:基于Widget的GUI,也就是常用的控件,比如文本、按钮之类的
  • QGuiApplication:不限于Widget的GUI,暂时用不上。
  • QCoreApplication:不基于GUI的程序,暂时也用不上。
    需注意的是,一个程序只能有一个QApplication对象,也就是单例模式。
  1. QLabel
    文本控件,下节一起说说常用用法,暂时先记住即可。
  2. app.exec()
    app.exec()的作用就是进入程序的主循环直到exit()被调用,也就是说从此处开始打开GUI窗口并阻塞,show()函数并不是显示,点击弹出窗口的关闭按钮后,返回一个整数给sys.exit,正式推出程序。

你可能感兴趣的:(PyQT5教程- 1. 安装)