一、主要内容
| 2 | PyQt5基本窗口控件(QMainWindow、Qwidget、Qlabel、QLineEdit、菜单、工具栏等) |
| 3 | PyQt5高级组件(QTableView、QListView、容器、线程等) |
| 4 | PyQt5布局管理(QBoxLayout、QGirdLayout、QFormLayout、嵌套布局等) |
| 5 | PyQt5信号与槽(事件处理、数据传递等) |
| 6 | PyQt5图形与特效(定制窗口风格、绘图、QSS与UI美化、不规则窗口、设置样式等) |
| 7 | PyQt5扩展应用(制作PyQt5安装程序、数据处理、第三方绘图库在PyQt5中的应用、UI自动化测试等) |
二、搭建PyQt5开发工具
python
PyQt5模块
PyCharm
1.安装PyQt5和Qt的工具包
使用命令提示行安装PyQt5
pip install PyQt5 -i https://pypi.douban.com/simple
使用命令提示行安装Qt的工具包
pip install PyQt5-tools -i https://pypi.douban.com/simple
2.配置Qt Designer

在PyCharm中找到设置打开后找到工具点击外部工具并点击打开,打开后点击左上角加号
我圈起来的地方都是要填写的,除了程序那一行,其他都可以和我写的一样
程序那一行要指定文件,具体填写步骤
1.找到所用python路径点击Lib文件夹

2.按照图片中的路径一步步操作最后找到designer.exe文件复制其路径在粘贴上去即可

扩展:python路径查找方法
在命令提示行中输入where python,找到自己所用的python版本就可以获得python路径,我用的是python3.9版本,所以选择第一个路径

这里需要注意的是,我们只需要打开C:\\Users\\35802\\AppData\\Local\\Programs\\Python\\Python39这个文件夹就行,然后再按步骤一步步操作
工作目录
$FileDir$
都填写完成后点确定即可
3..配置PyUIC
和刚才一样操作点击加号,新打开一个编辑工具

程序:
就是刚才查找的python文件所在的路径
实参:
-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
工作目录和上面一样
三、使用Qt Designer
1.打开Qt Designer

在PyCharm左边列表中随便右击一个文件出现图中界面后找到外部工具打开点击Qt Designer即可打开

点击后会出现上图所示界面,选择Main Window点击创建
2.Qt Designer中常用工具

控件功能说明
| Push Button | 对应 PyQt5 中的 QPushButton,是最常用的按钮控件。用户可以点击它来触发某个操作,如提交表单、开始检测、打开文件、保存结果等。可以设置文本、图标、快捷键、状态等。 |
| Label | 对应 PyQt5 中的 QLabel,用于显示文本或图像。通常用于界面中的提示信息、标题、说明文字,也可以显示图片或动画。它通常不接收用户输入,仅用于展示内容。 |
| Line Edit | 对应 PyQt5 中的 QLineEdit,是一个单行文本输入框。用户可以在其中输入文字,常用于输入用户名、文件路径、搜索关键词等。支持占位符文本、输入掩码、回显模式(如密码输入)等功能。 |
| Text Edit | 对应 PyQt5 中的 QTextEdit,是一个多行文本编辑框。用户可以在其中输入或编辑多行文字,支持富文本格式(如字体、颜色、图片等)。常用于显示日志、编辑文档、输入备注等场景。 |
3.输入文本及文本格式调节
1.文本修改

右击要输入文本的控件,点击改变文本,即可
2.格式调节

选择改变样式表,点击


四、使用PyUIC

将制作的窗口保存,再使用PyCharm打开此文件,点击此文件

点击PyUIC即可生成一个py文件
![]()
五、在PyCharm中打开界面
from PyQt5 import QtCore, QtGui, QtWidgets # 导入PyQt5的主要模块
from PyQt5.QtCore import * # 导入QtCore模块的所有内容,用于核心功能
from PyQt5.QtGui import * # 导入QtGui模块的所有内容,用于图形功能
from PyQt5.QtWidgets import QFileDialog, QMainWindow, QMessageBox # 导入QtWidgets模块中的一些特定类
'''QFileDialog可以帮助用户选择文件路径
QMainWindow则是创建具有菜单、工具栏和状态栏的主窗口的起点。
QMessageBox可以用于向用户显示提示或警告信息'''
from untitled import Ui_MainWindow # 导入UI类,这个类包含了你的主窗口设计
import sys # 导入系统模块,用于访问命令行参数和系统相关功能
class PyQtMainEntry(QMainWindow, Ui_MainWindow): # 定义一个继承自QMainWindow和Ui_MainWindow的类
def __init__(self): # 构造函数
super().__init__() # 调用基类的构造函数进行初始化
self.setupUi(self) # 调用setupUi方法,根据Ui_MainWindow设计设置界面
'''定义要触发的函数'''
# def predict_price(self):
# def showbiao(self):
# def slot1(self):
# print('自己设置的函数')
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv) # 创建应用程序实例
window = PyQtMainEntry() # 创建主窗口实例
window.show() # 显示主窗口
sys.exit(app.exec_()) # 进入事件循环,并确保在退出时清理
这个代码只支持没有设置其他别的函数的窗口进行使用
from untitled import Ui_MainWindow # 导入UI类,这个类包含了你的主窗口设计
想要显示的界面叫什么名字,from后面就填那个名字
运行结果:
我做的界面是这样的,所用显示下面的界面,这里由于没有设置每个控件是怎么使用的,所以点击按键是无效的,





