PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解


Posted in Python onNovember 02, 2020

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

摘要:Qt是常用的用户界面设计工具,而在Python中则使用PyQt这一工具包,它是Python编程语言和Qt库的成功融合。这篇博文通过图文详细介绍在PyCharm中如何完整优雅地安装配置PyQt5的所有工具包,主要内容包括、PyQt5P y Q t 5 tools的依赖包安装和Q t DesignerP y U I C、  PyRcc三个工具的设置。最后简单演示了PyQt5的调用方式及三个工具的使用方法,其目录如下:


前言

    很多情况下需要为程序设计一个GUI界面,在Python中使用较多的用户界面设计工具是PyQt。由于通常我们使用较多的IDEPyCharm,为了方便地使用PyQt进行用户界面设计,这里总结了在PyCharm安装配置的简单安装方法。可能有人还不清楚这几个工具的用途,这里对要安装配置的依赖包和工具简介如下:

PyQt5PyQt5是一套Python绑定Digia QT5应用的框架。Qt库是最强大的GUI库之一,PyQt5做为Python的一个模块,它有620多个类和6000个函数和方法。这是一个跨平台的工具包,它可以运行在所有主要的操作系统,包括UNIXWindowsMac OSPyQt5是双重许可。开发者可以在GPL和商业许可之间进行选择,详细可访问PyQt5的官方网站。——PyQt5中文教程
PyQt5-toolsPyQt5中没有提供常用的Qt工具,比如图形界面开发工具Qt DesignerPyQt5-tools中包含了一系列常用工具。——PyQt5工具文档
Qt Designer:可以通过Qt Designer来编写UI界面,Qt Designer的设计符合MVC的架构,其实现了视图和逻辑的分离,从而实现了开发的便捷。Qt Designer中的操作方式十分灵活,其通过拖拽的方式放置控件可以随时查看控件效果。Qt DesignerPyQt5-tools包一起安装,其安装路径在 “Python安装路径\Lib\site-packages\pyqt5-tools”下。——PyQt5速成教程
PyUICQt Designer生成的.ui文件(实质上是XML格式的文件)可以通过pyuic5工具转换成.py文件。——PyQt5速成教程
PyRcc:在使用PyQt开发界面时,在Qt Designer中使用的图片等资源需要将其编译为py文件,这时需要用到PyRcc工具方便地将qrc文件转换为py文件。——PyQt5安装教程

    作者本人已经进行配置测试了多台Windows 10电脑,特通过本教程将安装配置过程展现给大家,本教程持续更新,如果你有更好的方法或问题,欢迎大家留言。


1. 工具包安装

    对于一个新创建的Python环境,首先需要安装PyQt的相关工具包,因为是Python的依赖包所有可以通过pip进行安装,由于我们在PyCharm中进行程序设计,这里我们可以通过PyCharm中的环境管理界面进行安装。对于新建的项目test,其文件界面如下图(点击可放大查看)所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

一、点击菜单栏“File”,选择弹出的“Setting”选项,如下图(点击可放大查看)所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

二、选择“Project”,选择弹出的“Project Interpreter”选项,点击可看到当前已安装的环境和依赖包,如下图(点击可放大查看)所示,点击右侧“加号”按钮可添加新的依赖包:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

PyQt5

三、可以看出当前尚未安装pyqt5的依赖包,点击“加号”按钮弹出安装界面如下图(点击可放大查看)所示,在搜索框输入“PyQt5”可以搜索到对应的依赖包,点击“Install Package”按钮进行安装(绿色框处可选择安装版本),等待安装完成:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

PyQt5-tools

四、同样地安装PyQt5-tools工具包,在搜索框中输入“PyQt5-tools”,选中要安装的依赖包,点击“Install Package”进行安装,如下图中所示的步骤所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

五、这两个工具包安装完成,返回上一界面可以看到依赖包管理界面中出现了这两个依赖包,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
    

至此PyQt的工具包安装完成,在编辑器或命令行可以通过“import PyQt5”调用该库。这里确定一下安装位置,正常情况下这两个包的安装位置在Python的安装目录下的“\Lib\site-packages\”目录,如我这里的两个安装位置如下图所示(我这里Python为虚拟环境,安装位置在“E:\test\venv”):

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解


2. 设计工具配置

    依赖包安装完成,接下来介绍如何在PyCharm中添加工具,其实这几个工具在安装PyQt5-tools的时候已经包括在目录中,只不过要在PyCharm中方便使用还需要一些配置步骤。首先为了保证Windows系统能够正确识别PyQt5-tools的常见命令,还需要将PyQt5-tools的安装目录添加到系统环境变量Path中。

环境变量设置

一、在文件管理器中右击“我的电脑”,弹出快捷菜单,选择“属性”→“高级系统设置”弹出系统属性对话框,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

二、选择“高级”,点击下面的“环境变量”,弹出环境变量设置框,选择系统变量中的“Path”变量,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

三、双击“Path”环境变量,进入环境变量编辑界面,点击“编辑”在最后添加pyqt5-tools的安装位置,点击确定,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

这一步也可以选择“浏览”,通过文件夹选择对话框选中pyqt5-tools的安装位置,其安装路径在 “Python安装路径\Lib\site-packages\pyqt5-tools”(需根据实际情况进行修改),如下图(点击放大图片)所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
三、在环境变量界面中点击“新建”,在系统环境变量中新建名为“QT_PLUGIN_PATH”的变量,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

该变量值为Qt插件的安装位置,可通过“浏览目录”依次找到“plugins”文件夹,通常其位置在“Python安装路径\Lib\site-packages\PyQt5\Qt\plugins\”位置(需根据实际情况修改),点击“确定”,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
 

   环境变量设置完成,接下来介绍在PyCharm中设置Qt工具,主要包括Qt DesignerPyUICPyRcc这三个工具,前言中已介绍其作用,下面依次介绍工具设置过程。

Qt Designer

一、点击菜单栏“File”,弹出下拉框,选择“Setting”,弹出设置界面。在设置界面中选择“Tools”→“External Tools”,该部分操作如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

点击“加号”按钮新建工具,弹出工具配置界面:在“Name”一栏填写“Qt-Designer”;在“Program”一栏填写designer.exe文件位置,我这里位置为:“E:\test\venv\Lib\site-packages\pyqt5_tools\Qt\bin\designer.exe”(需根据实际情况填写);在“Working directory”一栏填写“$FileDir$”。最后点击“OK”,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

二、点击菜单栏“Tools”,弹出下拉框,选择“External Tools”,弹出工具选择框。选择“Qt-Designer”并点击,若出现Qt Designer的软件界面则表示配置成功,当然也可能出现如下的问题框:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

‪若出现以上问题,解决方案是将pyqt5_tools\Qt\plugins文件夹进行复制,覆盖到site-packages\pyqt5_tools\Qt\bin目录下,覆盖后的文件夹如下:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

‪以上操作后,再次按照步骤二的操作即可打开Qt Designer软件界面。

PyUIC

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

二、Program中填写pyuic5.exe这个程序的文件路径,一般在“Python环境目录\Scripts\pyuic5.exe”(此处需根据实际情况修改),也可以点击右侧的文件夹选择按钮浏览文件夹选中该位置;

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

三、在Arguments中内容填写如下:

$FileName$
-o
$FileNameWithoutExtension$.py

四、Working directory内容填写如下:

$FileDir$

五、完成填写后,点击“OK”,以上步骤参考图片中的步骤。

PyRcc

一、PyRcc工具的配置方式与PyUIC相似,同样在“External Tools”设置中点击“加号”按钮,在设置框中“Name”一栏填写“PyRcc”;

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

二、Program中填写pyrcc5.exe这个程序的文件路径,一般在“Python环境目录\Scripts\pyrcc5.exe”(此处需根据实际情况修改),也可以点击右侧的文件夹选择按钮浏览文件夹选中该位置;

三、在Arguments中内容填写如下:

$FileName$
-o
$FileNameWithoutExtension$_rc.py

四、Working directory内容填写如下:

$FileDir$

五、完成填写后,点击“OK”,以上步骤参考图片中的步骤。


3. 使用演示

    依赖包和工具安装配置完成,下面简单演示一下如何使用。首先打开或新建一个Python项目,点击菜单栏中的“Tools”,选择“External Tools”,可以看到之前设置好的三个工具,选择“Qt Designer”打开Qt设计工具,步骤如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
   

 打开软件后,在弹出的引导界面选择“Main Window”,然后点击“Create”按钮,创建一个窗体界面,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
  

  在软件界面左侧的控件选择栏中拖动三个“Push Button”到中间的设计框中,双击按钮依次修改显示字符,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
    

在软件界面左侧的控件选择栏中拖动两个“Label”控件到中间的设计框中,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

    如下图所示,点击“Resource Browser”下的铅笔图表,弹出新建qrc文件的编辑框。

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

    如下图所示,点击新建(1号标注)按钮新建一个qrc文件,创建qrc文件后点击添加文件(2号标注),向qrc资源文件中添加两张图片,最后点击“OK”确定。

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

    选中添加进来的label窗体,在右侧属性编辑栏中的“text”属性中“pixmap”一栏选择“Choose Resource”,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
    

在资源选择框中选择刚刚添加进qrc的图片,点击确定,对另一个label也进行同样的操作,如下图所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
   

 最终完成后的界面如下图所示,点击菜单栏“File”下“Save”将该界面保存为ui文件并置于项目目录下。

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
    

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

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解
    

PyCharm中选中保存的qrc文件,使用“Tools”下的“External Tools”中的“PyRcc”工具将该资源文件转换为需要的py文件。

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解

    在PyCharm中打开使用“PyUIC”工具转换的py文件,在下面添加如下代码:

if __name__ == '__main__':
 import sys
 from PyQt5.QtWidgets import QApplication, QMainWindow
 import pics_ui_rc # 导入添加的资源(根据实际情况填写文件名)
 app = QApplication(sys.argv)
 MainWindow = QMainWindow()
 ui = Ui_MainWindow()
 ui.setupUi(MainWindow)
 MainWindow.show()
 sys.exit(app.exec_())

    在PyCharm中点击运行该文件,最终运行界面如下所示:

PyCharm安装PyQt5及其工具(Qt Designer、PyUIC、PyRcc)的步骤详解


结束语

    因为本博文主要介绍安装步骤,关于PyQt的设计博文中介绍较简单,更加详细的讲解将在后面的教程中介绍。由于博主能力有限,博文中提及的方法即使经过试验,也难免会有疏漏之处。希望您能热心指出其中的错误,以便下次修改时能以一个更完美更严谨的样子,呈现在大家面前。同时如果有更好的实现方法也请您不吝赐教。

Python 相关文章推荐
python解析json实例方法
Nov 19 Python
python操作数据库之sqlite3打开数据库、删除、修改示例
Mar 13 Python
python爬虫入门教程之点点美女图片爬虫代码分享
Sep 02 Python
python实现批量下载新浪博客的方法
Jun 15 Python
Python对多属性的重复数据去重实例
Apr 18 Python
Python实现合并两个列表的方法分析
May 28 Python
Python tkinter的grid布局及Text动态显示方法
Oct 11 Python
Python 判断奇数偶数的方法
Dec 20 Python
python实现beta分布概率密度函数的方法
Jul 08 Python
python用requests实现http请求代码实例
Oct 31 Python
Tensorflow累加的实现案例
Feb 05 Python
python中pickle模块浅析
Dec 29 Python
Python如何急速下载第三方库详解
Nov 02 #Python
关于python3.9安装wordcloud出错的问题及解决办法
Nov 02 #Python
一篇文章带你搞定Ubuntu中打开Pycharm总是卡顿崩溃
Nov 02 #Python
jupyter notebook 写代码自动补全的实现
Nov 02 #Python
Python QT组件库qtwidgets的使用
Nov 02 #Python
python利用opencv保存、播放视频
Nov 02 #Python
python获得命令行输入的参数的两种方式
Nov 02 #Python
You might like
PHP array_flip() 删除重复数组元素专用函数
2010/05/16 PHP
PHP中Socket连接及读写数据超时问题分析
2016/07/19 PHP
strpos() 函数判断字符串中是否包含某字符串的方法
2019/01/16 PHP
jQuery实现tab选项卡效果的方法
2015/07/08 Javascript
Angular.js中用ng-repeat-start实现自定义显示
2016/10/18 Javascript
jQuery基本选择器和层次选择器学习使用
2017/02/27 Javascript
解决Node.js使用MySQL出现connect ECONNREFUSED 127.0.0.1:3306的问题
2017/03/09 Javascript
微信小程序搜索组件wxSearch实例详解
2017/06/08 Javascript
JS鼠标3次点击事件实现代码及扩展思路
2017/09/12 Javascript
ES6 迭代器(Iterator)和 for.of循环使用方法学习(总结)
2018/02/08 Javascript
JS与jQuery实现ListBox上移,下移,左移,右移操作功能示例
2018/05/31 jQuery
微信小程序实现通过js操作wxml的wxss属性示例
2018/12/06 Javascript
Vue+Element UI+Lumen实现通用表格分页功能
2019/02/02 Javascript
JS算法题之查找数字在数组中的索引位置
2019/05/15 Javascript
解决LayUI加上form.render()下拉框和单选以及复选框不出来的问题
2019/09/27 Javascript
谈谈我在vue-cli3中用预渲染遇到的坑
2020/04/22 Javascript
JavaScript eval()函数定义及使用方法详解
2020/07/07 Javascript
详解设计模式中的工厂方法模式在Python程序中的运用
2016/03/02 Python
Python实现的单向循环链表功能示例
2017/11/10 Python
Python中xrange与yield的用法实例分析
2017/12/26 Python
python 实现在Excel末尾增加新行
2018/05/02 Python
Python查找文件中包含中文的行方法
2018/12/19 Python
PyQt5实现类似别踩白块游戏
2019/01/24 Python
用python按照图像灰度值统计并筛选图片的操作(PIL,shutil,os)
2020/06/04 Python
Python collections模块的使用方法
2020/10/09 Python
纪伊国屋新加坡网上书店:Kinokuniya新加坡
2017/12/29 全球购物
Lentiamo比利时:便宜的隐形眼镜
2020/02/14 全球购物
工业学校毕业生自荐信范文
2014/01/03 职场文书
领导调研接待方案
2014/02/27 职场文书
酒后驾车标语
2014/06/30 职场文书
小学生思想品德评语
2014/12/31 职场文书
追悼会家属答谢词
2015/09/29 职场文书
2016关于学习党章的心得体会
2016/01/15 职场文书
2016年社区中秋节活动总结
2016/04/05 职场文书
python自动化操作之动态验证码、滑动验证码的降噪和识别
2021/08/30 Python
Golang 链表的学习和使用
2022/04/19 Golang