开发者

vscode 配置使用pyqt5的详细步骤

开发者 https://www.devze.com 2025-10-10 09:17 出处:网络 作者: wzg2016
目录1. vscode 配置 pyqt_designer配置1:设置 Pyuic 的路径配置2:设置 QT designer 的路径2. 编译 .ui 文件 得到 .py 文件3. 简单使用 .ui 定义的界面,添加槽函数4. 高级使用 .ui 定义的界面1. vscode 配置 pyqt_
目录
  • 1. vscode 配置 pyqt_designer
    • 配置1:设置 Pyuic 的路径
    • 配置2:设置 QT designer 的路径
  • 2. 编译 .ui 文件 得到 .py 文件
    • 3. 简单使用 .ui 定义的界面,添加槽函数
      • 4. 高级使用 .ui 定义的界面

        1. vscode 配置 pyqt_designer

        给 vscode 安装插件 “PYQT Integration”,点击 “PYQT Integration” 插件界面的齿轮,选择“Settings”,进入该插件的设置页面:

        vscode 配置使用pyqt5的详细步骤

        进入以下界面:

        配置1:设置 Pyuic 的路径

        Pyuic用于将GUI界面的 .ui 文件转换为 .py 文件。

        找到 “Pyqt-integration > Pyuic: Cmd”,填入安装PyQt5的虚拟环境中Pyuic的绝对路径,如下:

        D:\data\...\venv_QT\Scripts\pyuic5
        

        配置2:设置 QT designer 的路径

        QT designer 是 QT 用来设计 GUI 的软件,通过拖拽组件可以快速构建GUI。

        找到 " Pyqt-integration > Qtdesigner: Path ",输入虚拟环境中QT designer的绝对路径,如下:

        D:\data\...\venv_QT\Lib\site-packages\qt5_applications\Qt\bin\designer
        

        配置结果如下图所示:

        vscode 配置使用pyqt5的详细步骤

        ## 2. 创建 .ui 文件

        在 vscode 的文件目录下,点击鼠标右键,选择“PYQT:New Form”, 创建 qt 的 ui 界面,自动调用qt-designer打开

        vscode 配置使用pyqt5的详细步骤

        vscode自动调用qt-designer打开,创建并打开一个.ui文件,这里以创建 “Main Window”为例,介绍后续使用方法。

        vscode 配置使用pyqt5的详细步骤

        创建一个 “Main Window”,从左侧拖进来一个 button之后,“ctrl+s"保存,弹出如下对话框,保存为 .ui 文件

        vscode 配置使用pyqt5的详细步骤

        关闭qt-designer.

        回到 vscode, 在刚刚保存的 .ui 文件上,鼠标右键,

        vscode 配置使用pyqt5的详细步骤

        • PYQT:New Form : 用于创建一个新的.ui文件/界面
        • PYQT:Preview: 会显示 .ui 界面的效果
        • PYQT:Edit in Designer: 用 qt-designer 重新打开 .ui 文件NlbgV进行编辑
        • PYQT: Compile Form 将 .ui 文件编译为 .py 文件,创建了一个python类,供后续界面功能的开发使用。

        2. 编译 .ui 文件 得到 .py 文件

        在vscode中,在上一步创建的 .ui 文件上,点击鼠标右键,选择 ”PYQT: Compile Form“ 选项,得到.py 文件,如下:

        # -*- coding: utf-8 -*-
        # Form implementation generated from reading ui file 'f:\_文件_\pyqt_tests\pyqt_designer_test_1\test_1.ui'
        #
        # Created by: PyQt5 UI code generator 5.15.9
        #
        # WARNING: Any manual changes made to this file will be lost when pyuic5 is
        # run again.  Do not edit this file unless you know what you are doing.
        from PyQt5 import QtCore, QtGui, QtWidgets
        class Ui_MainWindow(object):
            phpdef setupUi(self, MainWindow):
                MainWindow.setObjectName("MainWindow")
                MainWindow.resize(640, 480)
                self.centralwidget = QtWidgets.QWidget(MainWindow)
                self.centralwidget.setObjectName("centralwidget")
                # 这里是对应组件的设置
                self.pushButton = QtWidgets.QPushButton(self.centralwidget)
                self.pushButton.setGeometry(QtCore.QRect(430, 360, 93, 28))
                self.pushButton.setObjectName("pushButton")
                MainWindow.setCentralWidget(self.centralwidget)
                self.menubar = QtWidgets.QMenuBar(MainWindow)
                self.menubar.setGeometry(QtCore.QRect(0, 0, 640, 26))
                self.menubar.setObjectName("menubar")
                MainWindow.setMenuBar(self.menubaphpr)
                self.statusbar = QtWidgets.QStatusBar(MainWindow)
                self.statusbar.setObjectName("statusbar")
                MainWindow.setStatusBar(self.statusbar)
                self.retranslateUi(MainWindow)
                QtCore.QMetaObject.connectSlotsByName(MainWindow)
            def retranslateUi(self, MainWindow):
                _translate = QtCore.QCoreApplication.translate
                MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
                self.pushButton.setText(_translate("MainWindow", "PushButton"))

        3. 简单使用 .ui 定义的界面,添加槽函数

        from PyQt5.QtWidgets import QApplication, QMainWindow
        import sys 
        from Ui_test_1 import Ui_MainWindow
        # 定义一个槽函数
        def on_btn_ok():
            print("hello world")
        # 创建一个空界面
        app = QApplication(sys.argv) 
        main_window = QMainWindow()  # 创建以恶搞窗口
        # 调用ui文件编译得到的头文件,配置main_window
        ui = Ui_MainWindow()        # 常见一个窗口配置类的类对象
        ui.setupUi(main_window)     # 用 ui 类装饰 创建的 main_window
        # 给 ui 界面中的pushButton组件添加槽函数
        ui.pushButton.clicked.connect(on_btn_ok)
        # 显示窗口
        main_window.show()
        sys.exit(app.exec_())

        4. 高级使用 .ui 定义的界面

        继承 QMainWindow, 与 第三步生成的 Ui_MainWindow 类,创建一个新的类,管理ui界面中的所有组件,以及添加槽函数。

        from PyQt5.QtWidgets import QApplication, QMainWindow
        import sys 
        from Ui_test_1 import Ui_MainWindow
        # 继承 Ui_MainWindow 与 QNlbgVMainWindow 创建新类
        class MyMainWindow(QMainWindow,Ui_MainWindow): #这里也要记得改
            def __init__(self,parent =None):
                super(MyMainWindow,self).__init__(parent) # QMainWindow 初始化
                self.setupUi(self)  # www.devze.com用 Ui_MainWindow 的 setupui 函数给 QMainWindow 添加组件
                # 给QMainWindow 的组件添加槽函数
                self.pushButton.clicked.connect(self.slot_on_btn_clicked)
            # 定义槽函数
            def slot_on_btn_clicked(self):
                print("hello world!")
        if __name__ == "__main__":
            app = QApplication(sys.argv)
            w = MyMainWindow()
            w.show()
            sys.exit(app.exec_())

        到此这篇关于vscode 配置使用pyqt5的详细步骤的文章就介绍到这了,更多相关vscode 使用pyqt5内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

        0

        精彩评论

        暂无评论...
        验证码 换一张
        取 消

        关注公众号