Vscode平台搭建Pyside6环境

Vscode平台搭建Pyside6环境

  • 目录
    • 软件安装
    • 扩展及库下载
      • 一、安装pyside6
      • 二、安装Vsode扩展
        • 1、Python扩展
        • 2、Pyside6扩展
    • 扩展设置
      • 一、Python解释器
      • 二、Qt for Python路径设置
    • 测试环境
      • 一、运行python
      • 二、运行一个简单界面

目录

这篇文章主要提供一些关于在Vscode平台搭建Pyside6环境的参考步骤。因为本人也是新手,所以之前在网上参考了很多资料,太多太杂了,这里不一一列举了,旨在大家一起交流学习。文章中有不对的地方欢迎指正,一起学习。希望可以帮助有需要的人!!!

软件安装

注意事项:1、Vscode下载如果觉得速度太慢,可以复制下载链接后,将链接中az764295.vo.msecnd.net部分改成vscode.cdn.azure.cn即可,下方链接已经处理过。
2.Python如果觉得下载太慢可以直接复制链接去迅雷下载,会快很多。

Vscode下载链接:Vscode 1.71.0.
Python下载链接:Python 3.10.7.

软件安装选择自己后续能找到的位置,也方便后面下载插件、库等

扩展及库下载

一、安装pyside6

在命令行输入:

pip install pyside6 -i https://pypi.douban.com/simple

-i https://pypi.douban.com/simple为修改下载源为豆瓣源,会快很多

Vscode平台搭建Pyside6环境_第1张图片

二、安装Vsode扩展

1、Python扩展

在扩展安装管理器搜索Python安装即可

Vscode平台搭建Pyside6环境_第2张图片

2、Pyside6扩展

在扩展安装管理器搜索Qt for Python安装即可
Vscode平台搭建Pyside6环境_第3张图片

扩展设置

一、Python解释器

打开一个py文件,可以在右下角点击快速选择解释器,也可以在扩展设置中选择。
Vscode平台搭建Pyside6环境_第4张图片

二、Qt for Python路径设置

1、点击扩展中设置图标,选择扩展设置进入设置
Vscode平台搭建Pyside6环境_第5张图片
2、在Designer:Path 项下填写qt desiner的路径,例如我安装在D:\B_Software\Python路径下,即填写

D:\B_Software\Python\Python310\Scripts\pyside6-designer.exe

如下图
Vscode平台搭建Pyside6环境_第6张图片

3、在Rcc:Option 项下填写以下项(默认即是以下内容,在当前路径输出qrc文件转换py文件的输出,含义可以自己去扩展介绍里了解一下)

-o
${resourceDirname}${pathSeparator}${resourceBasenameNoExtension}_rc.py

在Rcc:Path 项下填写pyside6-rcc的路径,例如我安装在D:\B_Software\Python路径下,即填写

D:\B_Software\Python\Python310\Scripts\pyside6-rcc.exe

如下图
Vscode平台搭建Pyside6环境_第7张图片

4、在Uic:Option 项下填写以下项(默认即是以下内容,在当前路径输出ui文件转换py文件的输出,含义可以自己去扩展介绍里了解一下)

-o
${resourceDirname}${pathSeparator}ui_${resourceBasenameNoExtension}.py

在Uic:Path 项下填写pyside6-uic的路径,例如我安装在D:\B_Software\Python路径下,即填写

D:\B_Software\Python\Python310\Scripts\pyside6-uic.exe

Uic:Live Execution 项下勾选则使能在线ui转py功能,每次ui文件更改保存后,会自动运行一次
如下图

Vscode平台搭建Pyside6环境_第8张图片

测试环境

一、运行python

打开一个文件夹,新建一个py文件,编写简单代码测试一下:
Vscode平台搭建Pyside6环境_第9张图片

二、运行一个简单界面

在想存放的文件夹下右击鼠标,点击Creat Qt UI File:
Vscode平台搭建Pyside6环境_第10张图片

即可打开designer工具,直接创建一个ui,保存即可:
Vscode平台搭建Pyside6环境_第11张图片
回到vscode右击刚才创建的test.ui文件,选择Compile Qt UI File转化为py文件:
Vscode平台搭建Pyside6环境_第12张图片
打开ui_test.py可以看到工具转化的文件内容,我们也打开designer,选择窗体–View Python code,可以看到和转化的文件一样的内容(这里也可以View C++ code看c++的版本)。
Vscode平台搭建Pyside6环境_第13张图片
Vscode平台搭建Pyside6环境_第14张图片
这里有个问题,一开始点击View Python code会报错,显示不出代码,在以下安装路径新建一个bin文件夹,并将路径下的rcc.exe和uic.exe以及其它非文件夹文件复制到bin文件夹(这里全部复制是因为我也不清楚需要依赖哪几个dll,反正也不大,嫌麻烦我全部复制了)

D:\B_Software\Python\Python310\Lib\site-packages\PySide6

Vscode平台搭建Pyside6环境_第15张图片
接下来运行main.py即可显示刚刚生成的ui,

Vscode平台搭建Pyside6环境_第16张图片
我们可以随时右击ui文件,点击Edit Qt UI File编辑ui文件,保存后直接运行main.py即可显示(前提打开了在线转化,不然需要手动再用uic转化一下)

Vscode平台搭建Pyside6环境_第17张图片

这里贴上main.py和Logic_code.py的代码,比较简单,也是参考网上一些代码写的
main.py

import sys
from PySide6 import QtWidgets
sys.path.append('./src')  # 导入同级目录下的文件
from Logic_code import MainProcess

if __name__ == "__main__":
    import sys
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = MainProcess()
    MainWindow.show()
    sys.exit(app.exec())

Logic_code.py

# -*-coding: utf-8 -*-
"""
@日期时间: 2022/5/3 14:52
@作者: 简单不过
@文件名:Logic_code.Py
@IDE: VsCode
"""
import time
from PySide6 import QtCore, QtWidgets, QtGui
from PySide6.QtWidgets import QMainWindow, QFileDialog, QMessageBox, QPushButton, QWidget
from ui_test import Ui_MainWindow

class MainProcess(QMainWindow, Ui_MainWindow):
    def __init__(self):
        super(MainProcess, self).__init__()
        self.setupUi(self)
        self.m_flag = None
        """
        状态栏时间显示设置,创建一个Label添加为状态栏永久控件
        创建一个定时器实时显示时间
        """
        self.time_view = QtWidgets.QLabel(self)
        self.time_view.setStyleSheet("color: white")
        self.statusbar.addPermanentWidget(self.time_view)
        time = QtCore.QTimer(self)
        time.timeout.connect(self.showtime)
        time.start()
        """
        控件与函数绑定
        """
        """
        控件与函数绑定
        """
    def showtime(self):
        datatime = QtCore.QDateTime.currentDateTime()
        text = datatime.toString("yyyy-MM-dd HH:mm:ss")
        self.time_view.setText(text)

    def write_msg(self, information):
        QMessageBox.information(None, '消息', information, QMessageBox.Ok)
        """
        关闭提示
        """
    def closeEvent(self, event):
        quitmsg = QMessageBox()
        quitmsg.setWindowTitle('确认窗口')
        quitmsg.setText('是否确认退出?')
        but_yes = QPushButton('确定')
        but_no = QPushButton('取消')
        quitmsg.addButton(but_yes, QMessageBox.YesRole)
        quitmsg.addButton(but_no, QMessageBox.NoRole)
        quitmsg.exec_()
        if quitmsg.clickedButton() == but_yes:
            event.accept()
        else:
            event.ignore()

你可能感兴趣的:(环境搭建,Python日常学习记录,vscode,python,ide)