记录2:PyQt5的安装配置和简单使用

一,安装PyQt5和PyQt5-tools

  1. 打开Windows命令提示符
  2. 安装PyQt5,输入:pip install PyQt5 或 pip install PyQt5 -i https://pypi.douban.com/simple
  3. 安装PyQt5-tools,输入:pip install PyQt5-tools 或 pip install PyQt5-tools -i https://pypi.douban.com/simple --trusted-host=pypi.douban.com
  4. 找到找到qtdesigner 安装路径; 打开designer.exe,就可以绘制你想要的UI界面,保存到你项目的文件夹
  5. 如果打开designer.exe失败,可能C:\Python38\Lib\site-packages\pyqt5_tools\Qt\bin\platforms里的文件不支持,寻找C:\Python38\Lib\site-ackages\pyqt5_tools\Qt\plugins\platforms文件夹,找到后复制里面的文件到C:\Python38\Lib\site-packages\pyqt5_tools\Qt\bin\platforms文件夹里,有一个文件重复,选择覆盖,再次尝试打开designer.exe试试(旧版的designer.exe文件在C:\Python38\Lib\site-packages\pyqt5_tools\,这是因为新版的PYQT5-tool中的designer.exe文件位置改变了导致的)

二,VS Code配置PyQt5和designer.exe

  1. 安装扩展PYQT Integration:打开VS Code拓展商店,PYQT Integration
  2. 打开设置界面:文件->首选项->设置->拓展 或 管理->设置->拓展
  3. 设置pyuic5的路径:找到Pyqt-integration>Pyuic:Cmd 填入相应的路径:C:\Python38\Scripts\pyuic5
  4. 设置designer的路径:找到Pyqt-integration>Qtdesigner:Path 填入相应的路径:C:\Python38\Lib\site-packages\pyqt5_tools\Qt\bin\designer
  5. 这两个文件在python安装路径下,搜索pyuic5和designer就可以找到位置。
    我的pyuic5路径是C:\Python38\Scripts\pyuic5
    我的designer路径是C:\Python38\Lib\site-packages\pyqt5_tools\Qt\bin\designer

三,简易UI界面测试

  1. 建立一个文件夹,用于存放项目文件,我在D盘新建vscode->新建VS-Code-Python
  2. 打开VS Code:文件->打开文件夹,打开VS-Code-Python文件夹,名称会全部变成大写
  3. 选中VS-CODE-PYTHON区域,右键->PYQT:New Form,选中点击即可打开designer.exe界面编辑器
  4. 初次启动会弹出这个“New Form”窗口,选择“Main Window”然后点击“Create”。在画布上任意拖动几个控件。
  5. 画好界面后保存到:VS-Code-Python文件夹,就会生成相应的.ui文件,如untitled.ui。
  6. VS-CODE-PYTHON区域也会加载untitled.ui,右键.ui文件,选择PYQT:compile from,可以对untitled.ui文件进行编译,自动生成对应的py文件Ui_untitled.py(无法直接运行,因为生成的文件并没有程序入口)
  7. 同一个目录下另外创建一个程序叫做“main.py”,启动运行->启动调试 F5:弹出测试的UI界面。
    import sys
    from PyQt5.QtWidgets import QApplication, QMainWindow
    
    import Ui_untitled
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        MainWindow = QMainWindow()
        ui = Ui_untitled.Ui_MainWindow()
        ui.setupUi(MainWindow)
        MainWindow.show()
        sys.exit(app.exec_())

四,其他的配置

  1. VS Code会提示安装代码检查分析器pylint
  2. VSCode默认使用pylint来进行代码检查,对于PyQt或PySide2,我们需要修改下VSCode的配置文件,不然会出现一些莫名其妙的波浪线/提示。
    1. Missing module docstringpylint(missing-module-docstring):没有对应的模块描述字符,在首部加入,可以消除
      """
      模块描述字符
      """
      
      import PySide2.QtCore
      from PySide2.QtWidgets import QApplication, QLabel
      # 打印PySide版本
      print(PySide2.__version__)

       

  3. setting.json添加设置,消除波浪线/提示如下:
    "python.linting.pylintArgs": [
            //禁用某个规则,C惯例(编码风格),R重构,W警告,E错误,F致命错误
            "--disable=W,C", 
            //针对E1101错误,如"xxx has no xxx member",也可以写在"--disable=E1101"
            "--generate-members",
            //pylint不会加载扩展模块(即非Python写的,而PyQt正好是使用sip工具绑定的C++Qt库)
            //所以需要在扩展列表中显示声明(可以是配置pylint或者写在vscode配置文件中)
            //参考:https://stackoverflow.com/questions/34746847/sublime-pylint-pyqt4-module-has-no-member
            "--extension-pkg-whitelist=PyQt5,PySide2" 
        ],
  4. 自动补全/智能提示

    "python.jediEnabled": false,
        "python.autoComplete.extraPaths": [
            "C:\\Python38\\Lib\\site-packages",
            "C:\\Python38\\Scripts"
        ]
  5. pyuic编译的常用附加选项:
    1. -x, --execute

      产生额外的代码来测试和显示类。

      -d, --debug

      显示调试信息。

      -i, --indent N

      设置缩进的空格数N,N为0时表示使用tab,缺省N为3,即3个空格

      -p, --preview

      预览用户界面。

    2. VSCode扩展中,设置编译属性 “-x”,
    3. PYQT:compile from,可以对untitled.ui文件进行编译,自动生成对应的py文件Ui_untitled.py,(添加程序入口,可直接运行调试)

 

posted @ 2020-09-03 10:44  北岸星空  阅读(1058)  评论(0)    收藏  举报