简介
我们之前介绍过使用tkinter
创建图形用户界面(GUI)应用程序,现在我们来介绍另外一个用于创建GUI的神器——pyQt5
,它可以用于创建跨平台的桌面应用程序。PyQt5 实现了一个 Python模块集,有 620 个类,6000 个函数和方法。PyQt5 有以下优点:简单好用,功能强大, 跨平台支持,文档齐全,稳定性高,生态支持,开源免费。在本文中,我们将介绍提供PyQt5安装和配置指南,以确保我们能够顺利开始开发GUI应用程序。
安装PyQt5
我们可以直接使用pip命令安装PyQt5,命令如下:
pip install pyqt5
安装完成后,我们就可以开始编写我们的程序,检验我们的安装是否成功,脚本如下:
from PyQt5 import QtWidgets
import sysif __name__ == '__main__':app = QtWidgets.QApplication(sys.argv) # 初始化界面MainWindow = QtWidgets.QWidget() # 生成一个主窗口MainWindow.show() # 显示主窗口sys.exit(app.exec_()) # 在主线程中退出
运行脚本,会出现如下的界面:
出现如下页面,即表示我们安装成功。
安装QtTools
虽然安装PyQt5
后,我们已经可以开始编写GUI程序,但是调试修改会比较繁琐,我们可以安装QtTools,来方便我们去修改我们的程序,方便我们的工作。
Qt Tools 包含了两个重要的工具:
- Qt Designer:图形界面设计工具,用于设计图形界面,生成 .ui文件,以 xml 格式存储界面和控件的属性
- PyUic:UI 文件转换工具,用于将 .ui 文件解析为 .py 文件
安装命令如下:
pip install pyqt5-tools
配置QtDesigner 和 PyUIC
基本上所有的Pythoner都是使用pycharm来进行Python的项目开发的,我们还可以在pycharm中对QtDesigner
和 PyUIC
进行环境配置,将其集成到 PyCharm 中。现在我们来介绍一下配置步骤:
- 在 PyCharm 添加 Create Tools
- 运行
PyCharm
; - 从顶部菜单栏选择:
File -> Settings
,弹出Seetings
窗口; - 从左侧菜单栏中选择:
Tools -> ExternalTools
,在右侧点击 “+” 弹出CreateTool
窗口;
- 添加 QtDesigner 工具
CreateTool 窗口依次填写:
- Name:填写 “QtDesigner”
- Program:填写
designer.exe
的路径,如我这里填写的C:\xxxxx\xxxxPycharmProjects\qt5_project\venv\Lib\site-packages\qt5_applications\Qt\bin\designer.exe
注:填写的designer.exe
是我们之前使用pip
命令安装的pyqt5-tools
的路径。
-
Arguments:可以留空
-
Working directory:生成 UI 文件的保存路径,要将 .ui 文件保存在当前 Project 的路径下,则填写
“$ProjectFileDir$”
;要将 .ui 文件保存在当前 Project 路径下的\program
子目录中,则填写“$ProjectFileDir$\program”
。
填写如下图:
点击OK即可完成添加。
- 添加 PyUIC 工具
在 CreateTool 窗口依次填写:
- Name:填写 “PyUIC”
- Program:填写 python.exe 的路径,例如:
D:\xxxxx\xxxxxx\PycharmProjects\qt5_project\venv\Scripts\python.exe
此处填写的是我项目的Python解释器路径
- Arguments:填写
"-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py”
- Working directory:填写将 .ui 文件转换为 .py 文件的保存路径,要将 .py 文件保存在当前 Project 的路径下,则填写
“$ProjectFileDir$”
;要将 .py 文件保存在当前 Project 路径下的\program
子目录中,则填写“$ProjectFileDir$\program”
。
填好 CreateTool 窗口后,点击 “OK” 即可完成 QtDesigner 工具的添加。
总结
本文主要介绍了PyQt5的安装和配置,后续我们将详细介绍使用PyQt5进行GUI的开发。
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!