Python-PyQt5 安装与配置教程

目录

  1. Part1:安装 PyQt5
  2. Part2:配置 PyQt5 依赖工具 QtDesigner 和 PyUIC
  3. Part3:使用 QtDesigner 设计界面
  4. Part4:使用 PyUIC 将设计好的界面转换为 .py 文件
  5. Part5:通过代码显示 UI 界面

Part1:安装 PyQt5

使用 PyQt5 开发界面,需要安装两个核心库,直接通过 pip 命令即可完成安装(注意这里针对的python版本是低于3.10的,高于3.10的版本有所变化),命令如下:

复制代码
pip install PyQt5
pip install pyqt5-tools

若出现安装超时、失败等问题,可添加镜像源加速下载,命令修改如下:

复制代码
pip install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pyqt5-tools -i https://pypi.tuna.tsinghua.edu.cn/simple

Part2:配置 PyQt5 的依赖工具 QtDesigner 和 PyUIC

QtDesigner 是可视化界面设计工具,PyUIC 是将 .ui 设计文件转换为 Python 代码的工具,需在 PyCharm 中进行配置,步骤如下:

  1. 打开 PyCharm,依次点击顶部菜单栏 File ---> Settings ---> Tools ---> External Tools(外部工具)。
  2. 点击界面右侧的 + 号,分别添加 QtDesigner 和 PyUIC 两个工具(需对应你的 Python/Conda 环境路径)。

配置 QtDesigner

核心是找到 designer.exe 的存放路径,以 Python 环境为例,我的路径如下:

复制代码
C:\Users\26416\AppData\Local\Programs\Python\Python310-32\Lib\site-packages\qt5_applications\Qt\bin\designer.exe

配置 PyUIC

核心是找到 pyuic5.exe 的存放路径,以 Python 环境为例,我的路径如下:

复制代码
C:\Users\26416\AppData\Local\Programs\Python\Python310-32\Scripts\pyuic5.exe

找不到路径可以在解释器这里查询自己的环境路径。

此外,配置时还需要填写以下两个关键参数(直接复制即可):

  • Arguments(参数):$FileName$ -o $FileNameWithoutExtension$.py
  • Working directory(工作目录):$FileDir$

Part3:使用 QtDesigner 设计界面

配置完成后,可通过两种方式打开 QtDesigner:

  1. 右键点击当前项目工程文件,在弹出的菜单中找到 External Tools ---> QtDesigner
  2. 直接点击 PyCharm 顶部菜单栏 Tools ---> External Tools ---> QtDesigner

打开 QtDesigner 后,操作流程如下:

  1. 在弹出的新建界面窗口中,选择 Main Window(主窗口),点击 Create(创建)。
  2. 进入设计界面后,左侧为组件面板,中间为画布,右侧为属性配置面板。
  3. 从左侧组件面板中拖动所需的常用组件(如按钮、文本框、标签等)到中间画布,搭建自定义界面。
  4. 可通过右侧属性面板,修改界面、组件的尺寸、名称、显示文本等属性,完成界面精细化设计。

Part4:使用 PyUIC 将设计好的界面转换为 .py 文件

界面设计完成后,先通过 Ctrl+S 保存设计文件(后缀为 .ui)。

再将其转换为可被 Python 调用的 .py 文件,步骤如下:

  1. 返回 PyCharm 项目界面,找到保存好的 .ui 设计文件。
  2. 右键点击该 .ui 文件,在弹出的菜单中选择 External Tools ---> PyUIC
  3. 执行完成后,会在同一目录下生成一个与 .ui 文件同名的 .py 文件,该文件中包含了界面的所有布局和组件信息,无需手动修改。

Part5:通过代码显示 UI 界面

下面提供一个通用模板,只需简单修改一处,即可显示你设计好的 UI 界面,代码及注释如下:

python 复制代码
from PyQt5 import QtCore, QtGui, QtWidgets  # 导入PyQt5核心模块
from PyQt5.QtCore import *  # 导入QtCore模块,提供核心功能(如信号与槽、定时器等)
from PyQt5.QtGui import *  # 导入QtGui模块,提供图形相关功能(如字体、图标等)
from PyQt5.QtWidgets import QFileDialog, QMainWindow, QMessageBox  # 导入常用窗口组件

'''
QFileDialog:帮助用户可视化选择文件/文件夹路径
QMainWindow:用于创建带有菜单、工具栏、状态栏的标准主窗口
QMessageBox:用于向用户显示提示、警告、确认等弹窗信息
'''

""" 唯一需要修改的地方:将 test 替换为你的 .ui 文件转换后的 .py 文件名 """
from test import Ui_MainWindow  # 导入生成的UI类,包含所有界面设计信息

import sys  # 导入sys模块,用于处理应用程序命令行参数和退出逻辑

class PyQtMainEntry(QMainWindow, Ui_MainWindow):  # 定义主窗口类,继承自QMainWindow和Ui_MainWindow
    def __init__(self):  # 构造函数,初始化窗口
        super().__init__()  # 调用父类构造函数,完成基础初始化
        self.setupUi(self)  # 调用setupUi方法,加载并渲染设计好的界面

    """ 此处可编写业务逻辑代码,为界面中的组件(如按钮)绑定点击事件等功能 """

if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)  # 创建PyQt5应用程序实例
    window = PyQtMainEntry()  # 创建主窗口实例
    window.show()  # 显示主窗口
    sys.exit(app.exec_())  # 进入应用程序事件循环,确保正常退出并清理资源

将代码中的 from test import Ui_MainWindow 中的 test 替换为你的 .py 文件名,运行该代码即可显示你设计的 UI 界面。界面的大小、组件样式等,均可在 QtDesigner 中自定义调整优化。

最终效果:

相关推荐
小乔的编程内容分享站2 小时前
记录使用VSCode调试含scanf()的C语言程序出现的两个问题
c语言·开发语言·笔记·vscode
自可乐2 小时前
Milvus向量数据库/RAG基础设施学习教程
数据库·人工智能·python·milvus
toooooop82 小时前
php BC MATH扩展函数计算精度-第三个参数
开发语言·php
蓁蓁啊2 小时前
C/C++编译链接全解析——gcc/g++与ld链接器使用误区
java·c语言·开发语言·c++·物联网
可触的未来,发芽的智生2 小时前
发现:认知的普适节律 发现思维的8次迭代量子
javascript·python·神经网络·程序人生·自然语言处理
weixin_307779132 小时前
C#实现两个DocumentDB实例之间同步数据
开发语言·数据库·c#·云计算
foundbug9992 小时前
基于C#的OPC DA客户端实现源码解析
开发语言·c#
yuezhilangniao2 小时前
Next.js 项目运维手册-含-常用命令-常见场景
运维·开发语言·reactjs
真智AI3 小时前
用 LLM 辅助生成可跑的 Python 单元测试:pytest + coverage 覆盖率报告(含运行指令与排坑)
python·单元测试·pytest