一、前言
|-----------------|-----------------------------------------------------------------------------|
| PyQt5 | PyQt5是一套Python绑定Digia QT5应用的框架。Qt库是最强大的GUI库之一 |
| PyQt5-tools | PyQt5中没有提供常用的Qt工具,比如图形界面开发工具Qt Designer,PyQt5-tools中包含了一系列常用工具 |
| Qt Designer | 可以通过Qt Designer来编写UI界面,Qt Designer的设计符合MVC的架构,其实现了视图和逻辑的分离,从而实现了开发的便捷 |
| PyUIC | Qt Designer生成的.ui文件(实质上是XML格式的文件)可以通过pyuic5工具转换成.py文件 |
| PyRcc | 在使用PyQt开发界面时,在Qt Designer中使用的图片等资源需要将其编译为py文件,这时需要用到PyRcc工具方便地将qrc文件转换为py文件 |
二、PyQt相关的库安装
(1)打开PyCharm
(2)文件 - 设置 - 项目:Python Scripts - Python解释器,点击+

(3)安装 PyQt5 和 PyQt5-tools

(4)安装完成后,可以在 Python安装目录下 "\Lib\site-packages"看到已安装的库,其他pyqt相关的库为依赖库,安装以上两个库时自动安装。

三、环境变量设置
(1)"Lib\site-packages\pyqt5_tools" 写入到Path变量中

(2)新建系统变量 "QT_PLUGIN_PATH"
变量值根据自己实际路径来填

四、Qt工具设置
文件 - 设置 - 工具 - 外部工具,点击+

1. Qt Designer
|----------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 名称 | Qt-Designer |
| 描述 | Qt设计界面 |
| 程序 | \Lib\site-packages\qt5_applications\Qt\bin\designer.exe 注意:designer.exe可能存在于如下目录: pyqt安装后designer.exe位置_pyqt designer一般在哪个文件夹-CSDN博客 |
| 工作目录 | FileDir |

2. PyUIC
|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------|
| 名称 | PyUIC |
| 程序 | \Scripts\pyuic5.exe |
| 实参 | 点击扩展填写 FileName -o FileNameWithoutExtension.py |
| 工作目录 | FileDir |

3. PyRcc
|----------|-----------------------------------------------------------------------------------------------------------------------------------------------------|
| 名称 | PyRcc |
| 程序 | \Scripts\pyrcc5.exe |
| 实参 | 点击扩展填写 FileName -o FileNameWithoutExtension.py |
| 工作目录 | FileDir |

五、第一个PyQt5程序
(1)新建一个设计器

(2)选择Main Window

(3)新建控件,添加资源文件


为窗体设置一个资源文件中的图标
(4)文件 - 保存
(5)编译保存的ui文件,编译完成后在同一个文件夹内生成同名的py文件
(6)编译资源qrc文件,编译完成后在同一个文件夹内生成同名的py文件

(7)新建一个myDemo.py(文件名随意)
将下面的代码复制进去。
python
import sys
from PyQt5.QtWidgets import QApplication, QMainWindow
import resource1_rc # 导入添加的资源(根据实际情况填写文件名)
from untitled import *
from PyQt5.QtCore import pyqtSlot
class MainWindow(QMainWindow, Ui_MainWindow):
def __init__(self, parent=None):
super(MainWindow, self).__init__(parent)
self.setupUi(self)
@pyqtSlot()
def on_pushButton_clicked(self):
self.lineEdit.setText('Hello World')
if __name__ == '__main__':
app = QApplication(sys.argv)
ui = MainWindow()
ui.show()
sys.exit(app.exec_())
(8)运行程序
点击PushButton, lineEdit显示"hello world"
