2024最新PyQt5及其工具(Qt Designer、PyUIC、PyRcc)手把手操作实践指南

前言

最近做了一些个人项目,内部逻辑还是挺多的,而且也有想要开源的想法,但是总不能直接把源码端给大家直接运行,有一些需求还有萌新小白用得上的,所以还得做一个可视化的UI。想了想能够通过Python建立的UI工具,在我印象中有PyQt5和tkinter这两个还算常见,wxPython没见过几个人用过,所有还是打算写一个PyQt5的教程入门文章带大家操作实践一下PyQt5的用法。之前网页或者博客很多篇都是PyQt5没有分离plugins,还有几个坑要注意一下。

1.PyQt工具包

PyQt5简述

PyQt5是一个创建图形用户界面(GUI)应用程序的工具集。它是Qt库的Python绑定之一,Qt库是一套跨平台的C++库,广泛用于开发GUI应用以及非GUI应用的编程工具。PyQt5支持多种操作系统,包括Windows、macOS、Linux等,使得用它开发的应用可以在这些平台上无缝运行。一般在嵌入式设备使用可视化UI大部分是PyQt5,PyQt5还提供了许多高级功能,如图形和动画支持、数据库交互、网络编程等。

PyQt5-tools简述

PyQt5-tools 是一个与 PyQt5 配合使用的工具集,它提供了一系列有助于开发 PyQt5 应用程序的工具和组件。这个工具集的主要作用是简化开发流程、提高效率,并帮助创建更加专业和美观的用户界面。

Qt Designer

功能:Qt Designer 是一个拖放式界面设计工具,允许开发者以可视化的方式创建和布局窗口和对话框,而无需编写代码。使用 Qt Designer,可以快速设计复杂的界面,并生成一个 XML 文件(.ui 文件),这个文件后续可以在 PyQt5 程序中加载或转换为 Python 代码。

pyuic 和 pyrcc

pyuic 是一个命令行工具,用于将 Qt Designer 生成的 .ui 文件转换成 Python 代码。pyrcc 用于处理 Qt 资源文件(如图片),将它们转换成 Python 可以使用的模块。这些工具使得将设计和资源无缝集成到 PyQt5 应用程序中变得更加简单。

2.工具包安装

首先安装PyQt5:

shell 复制代码
pip install PyQt5 -i https://pypi.douban.com/simple

安装常用的pyqt工具库 PyQt5-tools:

shell 复制代码
pip install PyQt5-tools -i https://pypi.douban.com/simple

安装完检查一下是否安装到了想要的Python运行环境下面:

除此之外,由于新版的PyQt5的plugins分离出去了,还需要安装一下pyqt5_plugins。

pip install PyQt5-plugins

3.环境配置

我们要让系统能够找到对应指令就得将文件运行路径放到环境变量里面去:

1.添加pyqt5-tools

2.新建QT_PLUGIN_PATH

在环境变量界面中点击"新建",在系统环境变量中新建名为"QT_PLUGIN_PATH"的变量:

vbnet 复制代码
\Lib\site-packages\PyQt5\Qt5\plugins

需根据实际情况修改。以上两步环境变量设置完成,现在需要在Pycharm设置工具。

4.Pycharm工具设置

Qt Designer

点击菜单栏文件,弹出下拉框,选择设置。在设置界面中选择"Tools "→"External Tools",该部分操作如下图所示:

点击"加号"按钮新建工具,弹出工具配置界面:

其中\Lib\site-packages\QtDesigner\designer.exe为我们要填写的程序,工作目录为:

ruby 复制代码
$FileDir$

PyUIC

同样按照以上方式添加PyUIC工具,点击"加号"按钮,在弹出的编辑设置框中Name一栏填写"PyUIC";

程序在下载的Python环境下的Scripts目录下面,其中实参为:

ruby 复制代码
$FileName$
-o
$FileNameWithoutExtension$.py

PyRcc

PyRcc工具的配置方式与PyUIC相似:

实参为:

shell 复制代码
$FileName$
-o
$FileNameWithoutExtension$_rc.py

设置完成后简单演示一下如何使用,首先打开或新建一个项目,按一下展示点击工具栏的External Tools,可以看到我们之前设定的三个工具:

打开QT-Designer可以进入到QT设计页面:

具体如何对Qt页面编辑以及左边菜单栏的操作我们不展开详细描述,后面博主将会出一系列专门的文章讲解Qt开发。这里再讲述一下我们保存好的UI文件和qrc文件该如何转化为python代码。

5.程序转化

PyCharm中选中保存的ui文件,使用"Tools"下的"External Tools"中的"PyUIC"工具将该文件转换为需要的py文件:

同理PyRcc 工具将该资源文件转换为需要的py文件。

使用"Tools"下的"External Tools"中的"PyUIC"工具将该文件转换为需要的py文件:

同理PyRcc 工具将该资源文件转换为需要的py文件。

欢迎私聊交流,点关注,防走丢,如有纰漏之处,请留言指教,非常感谢

相关推荐
Aska_Lv18 分钟前
业务架构设计---硬件设备监控指标数据上报业务Java企业级架构
后端·架构
m0_7482522321 分钟前
Python 入门教程(2)搭建环境 2.4、VSCode配置Node.js运行环境
vscode·python·node.js
m0_7482552629 分钟前
Spring Boot 3.x 引入springdoc-openapi (内置Swagger UI、webmvc-api)
spring boot·后端·ui
小华同学ai33 分钟前
吊打中文合成!这款开源语音神器效果炸裂,逼真到离谱!
前端·后端·github
梓羽玩Python36 分钟前
太牛了!OWL:Manus 最强开源复现,开源框架GAIA基准测试中排第一!
人工智能·python
语落心生40 分钟前
算法计算与训练如何支持低开销流式计算? deepseek背后的smallpond需要些新改造
后端
2301_7644413341 分钟前
python实现的生态模拟系统
开发语言·python·pygame
m0_748241701 小时前
Python毕业设计选题:基于django+vue的智能租房系统的设计与实现
python·django·课程设计
m0_748244961 小时前
Python毕业设计选题:基于Python的社区爱心养老管理系统设计与实现_django
python·django·课程设计
莓事哒1 小时前
静态网页的爬虫(以电影天堂为例)
爬虫·python