PyQt简介

什么是Qt

  • 使用 C++ 语言编写的跨平台 GUI 库,支持 Windows、Mac OS X 和 Linux。由于 Qt 使用 C++ 语言编写,所以使用 Qt 开发的 GUI程序的界面风格与当前操作系统完全相同,而且运行效率很高。
    • GUI(Graphical User Interface):带图形用户接口的程序,也就是我们常说的桌面应用。

什么是PyQt

  • PyQt 是一个用于创建 GUI 应用程序的跨平台工具包,它将 Python 与 Qt 库融为一体。也就是说,PyQt 允许使用 Python 语言调用 Qt 库中的 API 。这样做最大的好处就是在保留了 Qt 高运行效率的同时,大大提高了开发效率。因为,使用 Python 语言开发程序要比使用 C++ 语言开发程序快得多。PyQt 对 Qt 做了完整的封装,几乎可以用 PyQt 做 Qt 能做的任何事情。
    • 由于目前最新的 PyQt 版本是5.11,所以习惯上称 PyQt5 为 PyQt。

课程框架

画板

搭建PyQt开发环境

Python

  • 使用 Anaconda 安装 Python3.7(把 Python 常用的第三方集成库都安装在了里面)

PyQt5

  • 用命令安装 PyQt5:pip install pyqt5;
  • 卸载 PyQt5:pip uninstall pyqt5;
  • 检测 PyQt5 是否安装成功:import PyQt5 不报错就成功了;

第一章 PyQt5的基础 - 图2

注意

如果本机安装了多个 Python 环境,要分清 pip 到底属于哪一个。

PyCharm

开发一个基于 PyQt5 的桌面应用

必须使用两个类

QApplication(代表整个应用程序)和 QWidget(代表窗口部件),这两个模块都在 PyQt5.QtWidgets 的模块中。

sys.argv函数简介

argv 是 argument variable 参数变量的简单形式,一般在命令行调用的时候由系统传递给程序。这个变量其实一个 List 列表,argv[0] 一般是“被调用的脚本文件名或全路径”,这个与操作系统有关,argv[1] 和以后就是传入的系统命令参数。

代码

  1. import sys # 导入系统模块
  2. from PyQt5.QtWidgets import QApplication, QWidget # 从PyQt5.QtWidgets模块中导入两个类
  3. if __name__ == '__main__': # 只有当前程序直接运行First.py才执行该语句
  4. # 创建QApplication类的实例,sys用来获得命令行参数
  5. app = QApplication(sys.argv) #传入命令行参数
  6. # 创建一个窗口
  7. w = QWidget()
  8. # 设置窗口的尺寸,单位是像素
  9. w.resize(300,150)
  10. # 移动窗口,改变窗口的左上角坐标
  11. w.move(300,300)
  12. # 设置窗口的标题
  13. w.setWindowTitle("第一个基于PyQt5的桌面应用")
  14. # 显示窗口
  15. w.show()
  16. # 进入程序的主循环,并通过exit函数确保主循环安全结束
  17. sys.exit(app.exec_())

结果

第一章 PyQt5的基础 - 图3