当前位置: 首页 > news >正文

PyQt5在Pycharm上的环境搭建 -- Qt Designer + Pyuic + Pyrcc组合,大幅提升GUI开发效率

软件安装


目标软件:

  • Python解释器
  • Pycharm编辑器

Python官网: 点击访问Python官网

Pycharm官网:点击访问Pycharm官网

环境搭建


搭建完成后最终的环境详情:

python安装路径:D:\ProgramEnviron\Python\Python311Python 3.13.2
pip 25.1.1PyQt5 5.15.11
qt5_applications 5.15.2.2.3

1)首先配置一下pip的默认镜像资源,它可以有效的提高效率,否则下载速度将会很慢。配置语法及配置命令如下:

# pip config set global.index-url 镜像源地址
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

使用国内的各大镜像源进行下载,下载速度快!

清华大学镜像:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云镜像:https://mirrors.aliyun.com/pypi/simple/
中科大镜像:https://pypi.mirrors.ustc.edu.cn/simple/
...

2)对pip进行升级,在终端执行下列命令:

pip install --upgrade pip #(或者pip install -U pip)

3)接下来安装PyQt5的环境,一共需要安装两个包,分别是pyqt5qt5_applications,具体命令如下:

# 安装qt环境
pip install pyqt5
# 安装qt相关环境,如designer、pyuic、pyrcc...都包含在qt5_applications内
pip install qt5_applications

4)通过安装的qt5_application添加外部工具,下图是打开添加外部工具步骤:

在这里插入图片描述

5)首先添加Qt Designer设计师,在打开的Create Tool窗口填写信息,名称填写为Qt Designer,程序选择刚才安装的qt5_applications模块的路径下的Qt\bin\designer.exe,此项参数为空,工作目录为默认。完成后点击OK即可;

参数设置:
Name: Qt Designer
Program: D:\ProgramEnviron\Python\Python311\Lib\site-packages\qt5_applications\Qt\bin\designer.exe
Arguments: 
Working directory: D:\ProgramEnviron\Python\Python311\Lib\site-packages\qt5_applications\Qt\bin

在这里插入图片描述

注意:此处的程序路径填写时是在自己本机的路径下找,以上是根据我的路径进行查找的,只需找到Python的安装路径就可以确定程序的路径了,程序路径位于Python路径下的 .\Lib\site-packages\qt5_applications\Qt\bin\designer.exe

可以通过终端进行对Python路径的查找,打开终端输入下列命令:

where python

在这里插入图片描述

6)然后添加pyuic工具,在打开的Create Tool窗口填写信息,名称填写为pyuic,程序选择Python路径下的D:\ProgramEnviron\Python\Python311\python.exe,此项参数为-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py,工作目录为$FileDir$。完成后点击OK即可;

参数设置:
Name: pyuic
Program: :\ProgramEnviron\Python\Python311\python.exe
Arguments: -m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
Working directory: $FileDir$

在这里插入图片描述

7)然后添加pyrcc工具,在打开的Create Tool窗口填写信息,名称填写为pyrcc,程序选择Python路径下的D:\ProgramEnviron\Python\Python311\python.exe,此项参数为-m PyQt5.pyrcc_main $FileName$ -o $FileNameWithoutExtension$_rc.py,工作目录为$FileDir$。完成后点击OK即可;

参数设置:
Name: pyuic
Program: :\ProgramEnviron\Python\Python311\python.exe
Arguments: -m PyQt5.pyrcc_main $FileName$ -o $FileNameWithoutExtension$_rc.py
Working directory: $FileDir$

在这里插入图片描述

等上述三个工具全部设置完成后,我们就相当于Qt5的环境设置完成了,点击Apply应用工具。

验证环境


验证Qt Designer

1)依次点击 Tools --> External Tools(外部工具) --> Qt Designer 打开设计师,进入设计师主界面,如下图所示:

在这里插入图片描述

2)在打开的设计师界面选择MainWindow窗体,点击创建,如下图:

在这里插入图片描述

3)接下来对界面进行设计,例如我设置一个简单的登录界面,如下图:

在这里插入图片描述

4)在设计完成后保存ui文件,记住自己的路径选择,后续要用,图示如下:

在这里插入图片描述

验证pyuic

1)将刚才保存的ui文件找到,使用Pycharm打开,在Pycharm界面资源管理器中找到该ui文件,右击选择 External Tools(外部工具) --> pyuic,点击完成后便会生成当前的ui文件的Python代码。如下图所示:

在这里插入图片描述

2)可以新建一个main.py文件来表示主文件,在该文件内添加如下代码(确保该文件与生成的ui的python在同一目录下):

import sys  from PyQt5.QtWidgets import QMainWindow, QApplication  
from untitled import Ui_MainWindow  class windows(QMainWindow, Ui_MainWindow):  def __init__(self):  super(windows, self).__init__()  self.setupUi(self)  # 格式化代码 ctrl + alt + L
if __name__ == "__main__":  app = QApplication(sys.argv)  ui = windows()  ui.show()  app.exec_()

3)添加完成后可以执行当前代码,发现运行结果与之前的设计器的效果相同,如下图:

在这里插入图片描述

验证pyrcc

1)重新打开Qt Designer设计师,打开之前保存的ui文件,如下图:

在这里插入图片描述

2)为该ui界面添加一个图片,成功添加后保存,如下图:

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3)效果图如下,点击保存,然后再次回到Pycharm进行pyuic转换,这时会比之前多出一个.qrc文件,在该.qrc文件右击选择 External Tools(外部工具) --> pyrcc 进行转化,可以得到一个python文件。

在这里插入图片描述

在这里插入图片描述

结尾


至此,若根据上述操作能够成功验证三个工具,那我们的PyQt5的PyCharm环境就搭建完成了,接下来开启Qt5之旅吧!

原文地址: PyQt5在Pycharm上的环境搭建 – Qt Designer + Pyuic + Pyrcc组合,大幅提升GUI开发效率

http://www.xdnf.cn/news/1169533.html

相关文章:

  • stm32 智能小车
  • [2025CVPR-小目标检测方向]基于特征信息驱动位置高斯分布估计微小目标检测模型
  • AI视频-剧本篇学习笔记
  • LeetCode 633.平方数之和
  • Leetcode力扣解题记录--第73题(矩阵置零)
  • RabbitMQ-交换机(Exchange)
  • 【大模型记忆实战Demo】基于SpringAIAlibaba通过内存和Redis两种方式实现多轮记忆对话
  • Arraylist与LinkedList区别
  • STM32-SPI全双工同步通信
  • LWIP学习记录2——MAC内核
  • mybatis多对一一对多的关联及拼接操作以及缓存处理
  • 【学习路线】Python全栈开发攻略:从编程入门到AI应用实战
  • Custom SRP - Draw Calls
  • Claude Code Kimi K2 环境配置指南 (Windows/macOS/Ubuntu)
  • python小工具:测内网服务器网速和延迟
  • Qt资源系统:如何有效管理图片和文件
  • Canmv k230 DAC案例——TLV5638
  • 104.二叉树的最大深度
  • API是什么,如何保障API安全?
  • 刀客doc:Netflix与YouTube开始在广告战场正面交锋
  • [学习] 笛卡尔坐标系的任意移动与旋转详解
  • 洛谷 B3939:[GESP样题 四级] 绝对素数 ← 素数判定+逆序整数
  • 深入解析 Pandas:Python 数据分析的强大工具
  • Jenkins接口自动化测试(构建)平台搭建
  • Kafka监控体系搭建:基于Prometheus+JMX+Grafana的全方位性能观测方案
  • NLP自然语言处理的一些疑点整理
  • JavaScript AJAX 实现,演示如何将 Token 添加到 Authorization
  • 怎么在Mac系统中使用不坑盒子?
  • 交叉编译opencv(Cpp)于arm64架构开发板上
  • .NET使用EPPlus导出EXCEL的接口中,文件流缺少文件名信息