vscode 配置使用pyqt5的详细步骤

 更新时间:2025年10月08日 10:14:27   作者:wzg2016  
本文给大家介绍vscode 配置使用pyqt5的详细步骤,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

1. vscode 配置 pyqt_designer

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

进入以下界面:

配置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

配置结果如下图所示:

## 2. 创建 .ui 文件

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

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

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

关闭qt-designer.

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

  • PYQT:New Form : 用于创建一个新的.ui文件/界面
  • PYQT:Preview: 会显示 .ui 界面的效果
  • PYQT:Edit in Designer: 用 qt-designer 重新打开 .ui 文件进行编辑
  • 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):
    def 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.menubar)
        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 与 QMainWindow 创建新类
class MyMainWindow(QMainWindow,Ui_MainWindow): #这里也要记得改
    def __init__(self,parent =None):
        super(MyMainWindow,self).__init__(parent) # QMainWindow 初始化
        self.setupUi(self)  # 用 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内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python字符串分割常用方法(str.split()和正则)

    python字符串分割常用方法(str.split()和正则)

    在Python中字符串是一种非常常见的数据类型,在实际应用中我们经常需要对字符串进行分割,以便对其中的内容进行处理,这篇文章主要给大家介绍了关于python字符串分割(str.split()和正则)的相关资料,需要的朋友可以参考下
    2023-11-11
  • Python JSON编码/解码库orjson的用法详解

    Python JSON编码/解码库orjson的用法详解

    orjson是一个高性能的JSON编码/解码库,专为Python设计,使用Rust实现,相比标准库的json模块和其他第三方库(如 ujson、simplejson),orjson在速度上有显著优势,同时支持更丰富的原生数据类型,本文通过代码示例给大家介绍的非常详细,需要的朋友可以参考下
    2025-07-07
  • Python验证用户密码是否规范脚本示例

    Python验证用户密码是否规范脚本示例

    对用户密码的强度进行校验,要求用户密码达到一定的强度,符合安全性要求,这篇文章主要给大家介绍了关于Python验证用户密码是否规范的相关资料,需要的朋友可以参考下
    2024-05-05
  • Python脚本实现批量发布Markdown文章

    Python脚本实现批量发布Markdown文章

    这篇文章主要为大家详细介绍了如何使用Python脚本实现自动化批量发布Markdown文章,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2026-03-03
  • 详解python单例模式与metaclass

    详解python单例模式与metaclass

    这篇文章主要介绍了python单例模式与metaclass,文章介绍了单例模式的实现方式
    2016-01-01
  • Python 实现域名解析为ip的方法

    Python 实现域名解析为ip的方法

    今天小编就为大家分享一篇Python 实现域名解析为ip的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-02-02
  • Python程序打包成EXE的四种方法详解与实战

    Python程序打包成EXE的四种方法详解与实战

    将Python代码打包成可执行文件是一种使你的应用程序更易于分享和分发的方法,本文一步一步地教你如何用 Pyinstaller 模块将Python程序打包成exe文件,这篇教程绝对是全网最全面、最详细的教程,包含四种打包的方法,需要的朋友可以参考下
    2025-07-07
  • 用python写的一个wordpress的采集程序

    用python写的一个wordpress的采集程序

    在学习python的过程中,经过不断的尝试及努力,终于完成了第一个像样的python程序,虽然还有很多需要优化的地方,但是目前基本上实现了我所要求的功能,需要的朋友可以参考下
    2016-02-02
  • Python Tkinter Entry和Text的添加与使用详解

    Python Tkinter Entry和Text的添加与使用详解

    这篇文章主要介绍了Python Tkinter Entry和Text的添加与使用详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-03-03
  • Python Selenium动态渲染页面和抓取的使用指南

    Python Selenium动态渲染页面和抓取的使用指南

    在Web数据采集领域,动态渲染页面已成为现代网站的主流形式,本文将从技术原理,环境配置,核心功能系统讲解Selenium在Python动态爬虫中的应用,需要的可以参考下
    2025-05-05

最新评论