因公司需要, 今天配置了 pyqt5+pycharm 环境, 准备试着写些 UI 界面.
参考资源:
1. Python3+PyQt5+PyCharm 桌面 GUI 开发环境搭建 https://www.cnblogs.com/lizm166/p/10286555.html
2. Python3 PyQt5 pycharm 环境搭建 https://www.jianshu.com/p/094928ac0b73
3. PyQT5 速成教程 - 2 Qt Designer 介绍与入门 https://www.jianshu.com/p/5b063c5745d0
配置流程
步骤 1: 安装 pyqt5 和 pyqt5-tools
1.python 已经安装完成
2. 安装 PyQt5 + PyQt5-tools
如果用原生资源库安装地比较慢, 可以使用清华或阿里的镜像
- pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple PyQt5
- pip3 install PyQt5-tools -i http://mirrors.aliyun.com/pypi/simple/--trusted-host mirrors.aliyun.com
两个镜像地址
清华大学: https://pypi.tuna.tsinghua.edu.cn/simple
阿里云: http://mirrors.aliyun.com/pypi/simple/
可能需要升级一下 pip
升级 pip: python -m pip install --upgrade pip
安装好 pyqt5 后, 需要找到它的 应用文件地址, 并保存它的路径以便之后使用
- Path designer:
- "C:\Users\THINKPAD\AppData\Local\Programs\Python\Python37\Lib\site-packages\pyqt5_tools\Qt\bin\designer.exe"
- Path python:
- "C:\Users\THINKPAD\AppData\Local\Programs\Python\Python37\python.exe"
步骤 2: 安装可视化 UI 控件编辑器 qtdesigner
1. 打开 File -- Settings -- tools -- external tools -- +
在点击 + 后, 填写相关信息
- Name:Qt Designer
- Description:Qt Designer(可选)
- Program:"C:\Users\THINKPAD\AppData\Local\Programs\Python\Python37\Lib\site-packages\pyqt5_tools\Qt\bin\designer.exe"(详细解释)
Working Directory: 见下 (这里最好选择 insert Marco 中的 ProjectFileDir 这样 pycharm 就会自动获取项目目录, 见第二张截图)
关于如何找 designer.exe 文件问题, 可以参考: https://blog.csdn.net/u011675964/article/details/101012280
步骤 3: 配置 pyuic, 用于把 QtDesigner 创建的 UI 文件转换成 py 文件.
1. 还是步骤 2 中的打开流程, 只不过这次是添加 python.exe 的路径
需要添加的内容
- Name:Qt Designer
- Description:(可选)
- Program:"C:\Users\THINKPAD\AppData\Local\Programs\Python\Python37\python.exe"
- Working directory:(可选)(这里也是, 使用 macro 自动获取项目目录)
关于如何查找 python.exe 文件路径, 可以参考: https://blog.csdn.net/jpch89/article/details/86512831
在命令行中输入:
- C:\Windows\system32>where python
- C:\Users\THINKPAD\AppData\Local\Programs\Python\Python37\python.exe
- D:\A_anaconda\python.exe
- C:\Users\THINKPAD\AppData\Local\Microsoft\WindowsApps\python.exe
步骤 4: 配置完毕, 可以见两个外部工具
步骤 5: 编写第一个 qt 程序
进入 Qt Designer 界面 Tools -- External Tools -- Qt Designer
Qt Designer 界面
创建 Main 窗口并保存, 保存名字这里是 HelloMainUI.ui
然后在 pycharm IDE 中的项目导航栏, 找到 HelloMainUI.ui, 右键 -- External tools -- PyUIC(将 UI 格式文件转化为 .py 格式文件) 然后会生成一个 HelloMainUI.py 文件
接着在 HelloMainUI.py 同级目录下创建一个 python 主程序, main.py, 程序代码 参考给出的来源, 这里借鉴一下
importsys importHelloMainUI fromPyQt5.QtWidgetsimportQApplication,QMainWindow if__name__=='__main__': App=QApplication(sys.argv) MainWindow=QMainWindow() ui=HelloMainUI.Ui_MainWindow() ui.setupUi(MainWindow) MainWindow.show() sys.exit(App.exec_())
然后可以右键 main.py 程序区域, 执行当前程序
运行结果
写在最后
关于 ModuleNotFoundError: No module named 'PyQt5' 问题.
在搭建完环境之后, 按照参考的资源试着写了一个 UI 然后准备运行一下, 结果出现了 ModuleNotFoundError: No module named 'PyQt5' 的问题, 好在 csdn https://blog.csdn.net/qq_33485434/article/details/80606359 上有这个问题的解决办法.
因为已经创建了项目, 所以只使用了第二种方法, 不过跟前面提到解决办法中文件的位置有些不同, 我的 venv 文件是在项目目录下而不是在 external liberary 目录下, 不知道这个是 IDE 的问题还是我之前的配置问题. 不过解决方式可以通用.
其实这个问题在用 pip3 install cv2 时也遇到过, 使用前面提到的 csdn 博主中的第一种方法可以很好的解决.