A-A+

最新 python3.8+PyQt5+pycharm环境配置

2019年12月20日 22:38 汪洋大海 暂无评论 共2604字 (阅读2,097 views次)
0x 00 PyQt5安装
安装 PyQt5
1
pip install pyqt5
安装 pyqt5-tools

PyQt5 不再提供 QtDesigner 等工具,所以需要再安装 pyqt5-tools工具

1
pip install pyqt5-tools
检测Pyqt5是否安装成功

pip list结果

pip list结果

0x 01 pycharme环境配置

打开 Pycharm,依次选择 /File/Settings/Tools/External Tools/ 进入外部工具添加界面

External Tools界面

External Tools界面

点击加号来创建一个外部工具 QtDesigner,配置如下
1
2
3
4
5
6
7
8
9
10
11
-- 工具名称,用于菜单显示
Name = QtDesigner
-- 工具作用描述
Description = Qt tool for designing and building GUIs with Qt Widgets
-- 可通过浏览模块安装路径下的designer.exe程序
Program =  D:\ProgramData\Anaconda3\Library\bin\designer.exe
-- 默认为空即可
Arguments =     
-- 通过点击右侧 Insert Macro 来选择要插入的宏,$FileDir$ 表示文件当前所在目录
Working directory = $FileDir$
其他配置保持默认即可。

QtDesigner 编辑

QtDesigner 编辑

创建一个外部工具 PyUiCompiler,用于将 Qt 的UI界面设计文件 ui文件 转换成 py代码,配置如下:
1
2
3
4
5
6
7
8
9
10
11
-- 工具名称,用于菜单显示
Name = PyUiCompiler
-- 工具作用描述
Description = Python User Interface Compiler for Qt
-- 可通过浏览Python安装路径下的python.exe程序
Program = D:\ProgramData\Anaconda3\python.exe
-- 调用 PyQt5.uic.pyuic 来执行转换操作
Arguments = -m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py    
-- 通过点击右侧 Insert Macro 来选择要插入的宏,$FileDir$ 表示文件当前所在目录
Working directory = $FileDir$
其他配置保持默认即可。

PyUiCompiler 编辑

PyUiCompiler 编辑

Pyqt5工具使用

选中要进行操作的文件后,依次选择主菜单 /Tools/QT/ 下的自定义工具即可,或者右键依次选择 /External Tools/ 下的自定义工具即可。

Pyqt5工具使用

Pyqt5工具使用

0x 02 编写ui界面方式
通过ui文件实现

首先点击 QtDesigner 外部工具菜单,设计生成 hello.ui 文件,然后点击 PyUiCompiler 通过 hello.ui 文件生成对应的 hello.py 文件。
然后编写测试程序 main.py 来调用 hello.py,从而显示出界面。(main.py)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
import hello     # 导入 hello.py 模块

from PyQt5.QtWidgets import QApplication, QMainWindow

if __name__ == '__main__':
    app = QApplication(sys.argv)
    mainWindow = QMainWindow()
    ui = hello.Ui_MainWindow()
    ui.setupUi(mainWindow)
    mainWindow.show()
    sys.exit(app.exec_())

或者不通过 PyUiCompiler 工具来生成 hello.ui 文件对应的 hello.py 文件,而是直接在代码中加载 hello.ui 文件。(main2.py)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
from PyQt5.QtWidgets import QMainWindow, QApplication
from PyQt5 import uic

# 加载 ui 文件
Ui_MainWindow, QtBaseClass = uic.loadUiType('hello.ui')


class MainUi(QMainWindow, Ui_MainWindow):
    def __init__(self):
        QMainWindow.__init__(self)
        Ui_MainWindow.__init__(self)
        self.setupUi(self)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    win = MainUi()
    win.show()
    sys.exit(app.exec_())
通过代码直接实现

直接通过代码方式实现ui界面的设计和生成。(main3.py)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
from PyQt5.QtWidgets import QApplication, QWidget

if __name__ == '__main__':
    app = QApplication(sys.argv)
    win = QWidget()
    win.resize(250, 150)
    win.move(300, 300)
    win.setWindowTitle('Hello World')
    win.show()

    sys.exit(app.exec_())

文章来源:https://leyan.pro/2019/10/13/Anaconda3-PyQt5-pycharm%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE/

汉化方法也很简单。访问https://android.googlesource.com/platform/external/qt/+/refs/heads/jumper-stable/Windows-4.7.4/translations

下载designer_zh_CN.qm放入你

复制到pyqt5-tools 安装包目录中的translations文件夹中就可以啦。

布施恩德可便相知重

微信扫一扫打赏

支付宝扫一扫打赏

×
标签:

给我留言