美文网首页Softwares
在PyCharm中PyQt5开发环境配置

在PyCharm中PyQt5开发环境配置

作者: shellever | 来源:发表于2018-09-01 17:09 被阅读4次

    开发环境配置步骤说明

    1. 安装PyQt5

    pip install pyqt5
    

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

    pip install pyqt5-tools
    
    01-pip-install-pyqt5-tools.png

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

    02-File-Settings-Tools-External_Tools.png

    4. 点击绿色加号来创建一个外部工具 QtDesigner,配置如下:

    -- 工具名称,用于菜单显示
    Name = QtDesigner
    -- 工具作用描述
    Description = Qt tool for designing and building GUIs with Qt Widgets
    -- 可通过浏览模块安装路径下的designer.exe程序
    Program = D:\devsoft\Python\Python36\Lib\site-packages\pyqt5-tools\designer.exe    
    -- 默认为空即可
    Arguments =     
    -- 通过点击右侧 Insert Macro 来选择要插入的宏,$FileDir$ 表示文件当前所在目录
    Working directory = $FileDir$
    其他配置保持默认即可。
    
    03-External_Tools-QtDesigner.png

    5. 创建一个外部工具 PyUiCompiler,用于将 Qt 的UI界面设计文件 ui文件 转换成 py代码,配置如下:

    -- 工具名称,用于菜单显示
    Name = PyUiCompiler
    -- 工具作用描述
    Description = Python User Interface Compiler for Qt
    -- 可通过浏览Python安装路径下的python.exe程序
    Program = D:\devsoft\Python\Python36\python.exe
    -- 调用 PyQt5.uic.pyuic 来执行转换操作
    Arguments = -m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py    
    -- 通过点击右侧 Insert Macro 来选择要插入的宏,$FileDir$ 表示文件当前所在目录
    Working directory = $FileDir$
    其他配置保持默认即可。
    
    04-External_Tools-PyUiCompiler.png

    6. 外部工具使用
    选中要进行操作的文件后,依次选择主菜单 /Tools/External Tools/ 下的自定义工具即可。

    05-Tools-External_Tools.png

    或者右键依次选择 /External Tools/ 下的自定义工具即可。

    06-Tools-External_Tools2.png

    编写ui界面方式

    1. 通过ui文件实现
    首先点击 QtDesigner 外部工具菜单,设计生成 hello.ui 文件,然后点击 PyUiCompiler 通过 hello.ui 文件生成对应的 hello.py 文件。

    然后编写测试程序 main.py 来调用 hello.py,从而显示出界面。(main.py)

    #!/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)

    #!/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_())
    

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

    #!/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_())
    

    GitHub源码参考

    pyqt5 examples

    参考文章

    Pycharm+Python+PyQt5使用
    基于QTdesigner的PyQt编程
    PyQt5开发环境配置并使用

    相关文章

      网友评论

        本文标题:在PyCharm中PyQt5开发环境配置

        本文链接:https://www.haomeiwen.com/subject/kisuwftx.html