文章目录
- Part1:安装 PyQt5
- Part2:配置 PyQt5 的依赖工具 QtDesigner 和 PyUIC
- Part3:使用QtDesigner设计界面
- Part4:使用PyUIC将设计好的界面转换为.py文件
- Part5:通过代码显示ui界面
Part1:安装 PyQt5
-
需要安装两个库,可直接通过一下命令安装
pip install PyQt5 pip install pyqt5-tools
-
若安装失败可尝试在后面(空格一下)加上清华的镜像源
-i https://pypi.tuna.tsinghua.edu.cn/simple
Part2:配置 PyQt5 的依赖工具 QtDesigner 和 PyUIC
-
打开File —> Settings—>tools
-
如果你的 pycharm 的环境是 conda 或者是 python 那么就在你对应环境的路径下找到 designer.exe 和 pyuic5.exe
-
这里我的环境是python环境,操作如下:
-
QtDesigner
- 我的 designer.exe 路径:D:\python\310\Lib\site-packages\qt5_applications\Qt\bin\designer.exe
- 我的 designer.exe 路径:D:\python\310\Lib\site-packages\qt5_applications\Qt\bin\designer.exe
-
PyUIC
- 我的 pyuic5.exe 路径:D:\python\310\Scripts\pyuic5.exe
- 我的 pyuic5.exe 路径:D:\python\310\Scripts\pyuic5.exe
-
以下是方便复制的内容
Arguments:$FileName$ -o $FileNameWithoutExtension$.py Working directory:$FileDir$
Part3:使用QtDesigner设计界面
- 可以右击你的工程文件,也可以在最上面的tools中找到 QtDesigner 并点击
- 进入如下界面
- 选择Main Window,点击创建,以下是左右结构的介绍
- 可以拖动左边的组件到中间的画布中,进行设计,下面是用一些常用的组件设计的一个简单的几面
- 可以在属性中看到都用到了哪些组件
- 可以在属性中看到都用到了哪些组件
Part4:使用PyUIC将设计好的界面转换为.py文件
- 保存设计好的ui界面后,右击你的ui文件,点击PyUIC
- 会生成一个和你ui文件同名的py文件,里面都是一些界面的信息
Part5:通过代码显示ui界面
-
以下提供了一个模板用来显示设计好的ui界面
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 你ui文件的文件名 Ui_MainWindow""" from test 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设计设置界面 """中间可以写一些赋予ui界面中各个组件的功能""" if __name__ == "__main__": app = QtWidgets.QApplication(sys.argv) # 创建应用程序实例 window = PyQtMainEntry() # 创建主窗口实例 window.show() # 显示主窗口 sys.exit(app.exec_()) # 进入事件循环,并确保在退出时清理
-
运行代码即可显示你的ui界面
- 只作演示,具体大小可以自定义调整
- 只作演示,具体大小可以自定义调整