vscode搭建PyQt + Quick开发环境
创始人
2024-12-26 03:05:18
0
icon

VScode搭建PyQt + Quick开发环境


目录

  • 环境准备 🔔
  • 安装必要的Python包 🔔
    • 🔎 PyQt5和PySide2的区别
    • 💾 安装PyQt5
    • 💾 安装PySide2
  • 配置VScode 🔔
    • 💻 安装扩展
  • 代码示例 🔔
    • ✔ Python调用Qt库的示例
    • ✔ 编写Quick 界面
    • ✔ 程序界面
  • 发布 🔔
  • 支持 🔔


环境准备 🔔

  • 🔥 安装Python
  • 🔥 安装Visual Studio Code

安装必要的Python包 🔔

PyQt有两种库PyQt5PySide2

🔎 PyQt5和PySide2的区别

PyQt5PySide2都提供了Python对Qt库的绑定,选择PyQt5还是PySide2,主要取决于你的项目需求和许可要求。如果需要在闭源项目中使用,且不想购买商业许可证,PySide2可能是更好的选择。如果你希望获得更丰富的社区资源和教程,PyQt5则是不错的选择。

  1. 授权和许可 📄

    • PyQt5:采用GPL(GNU General Public License)或商业许可证。如果你的项目是闭源的,你需要购买商业许可证。
    • PySide2:由Qt公司(现已被The Qt Company维护)开发,采用LGPL(Lesser General Public License)或商业许可证。LGPL允许在闭源项目中使用,前提是遵守动态链接和库的修改发布要求。

  2. 开发者和支持 📄

    • PyQt5:由Riverbank Computing开发和维护,有长期的社区支持。
    • PySide2:由Qt公司开发和维护,随着Qt框架的更新得到官方支持。

  3. 命名空间和模块 📄

    • PyQt5:在导入模块时使用from PyQt5 import …
    • PySide2:在导入模块时使用from PySide2 import …,尽管接口和PyQt5非常相似,但有时需要注意命名空间的差异。

💾 安装PyQt5

需要使用pip安装PyQt5PyQt5-tool两个包

  • 📄 安装PyQt5

    pip install pyqt5 

    如果下载异常或者下载过久,可以使用镜像安装:

    pip install -i https://mirrors.aliyun.com/pypi/simple/ PyQt5 
  • 📄 安装PyQt5-tool

    pip install pyqt5-tool 

    如果下载异常或者下载过久,可以使用镜像安装:

    pip install -i https://mirrors.aliyun.com/pypi/simple/ PyQt5-tool 

💾 安装PySide2

pip install PySide2 

如果下载异常或者下载过久,可以使用镜像安装:

pip install -i https://mirrors.aliyun.com/pypi/simple/ PySide2 


配置VScode 🔔

💻 安装扩展

📄扩展📜作用
在vscode中使用Python开发必须下载的扩展:
  • 语法高亮
  • 代码补全
  • 格式化
  • 代码导航
  • 其他
允许你使用VSCode的调试功能来调试Python应用程序。
使用QWidget库进行开发的可安装,可以调用QtDesigner拖拽控件

代码示例 🔔

✔ Python调用Qt库的示例

main.py中编写python示例:

# main.py from PyQt5.QtCore import QObject, pyqtSignal, pyqtSlot, QTimer, QDateTime from PyQt5.QtGui import QGuiApplication from PyQt5.QtQml import QQmlApplicationEngine, qmlRegisterType  class Backend(QObject):     mySignal = pyqtSignal(str)          def __init__(self, parent=None):         QObject.__init__(self)         self.timer = QTimer(self)         self.timer.timeout.connect(lambda: self.mySignal.emit(QDateTime.currentDateTime().toString("yyyy-MM-dd hh:mm:ss")))         self.timer.start(1000)      @pyqtSlot(str)     def onButtonClicked(self, text):         print(text)  if __name__ == "__main__":     app = QGuiApplication([])     engine = QQmlApplicationEngine()     qmlRegisterType(Backend, "Backend", 1, 0, "Backend")     engine.load("main.qml")     app.exec_() 

✔ 编写Quick 界面

import QtQuick 2.7 import QtQuick.Controls 2.0 import QtQuick.Layouts 1.3 import QtQuick.Window 2.2 import Backend 1.0  Window {     title: qsTr("Hulu PyQml Example")     visible: true      width: 300     height: 100     property Backend backend: Backend {}      ColumnLayout {         spacing: 10         anchors.fill: parent                          Text {             Layout.alignment: Qt.AlignHCenter             Layout.preferredWidth: 100             Layout.preferredHeight: 30             id: text         }         Button {             id: button             Layout.preferredWidth: 100             Layout.preferredHeight: 30             Layout.alignment: Qt.AlignHCenter             text: "Click me"             onClicked: {                 backend.onButtonClicked(button.text)             }         }     }     Connections {         target: backend         function onMySignal(str) {             text.text = str         }     } } 

✔ 程序界面

在这里插入图片描述

示例工程源码下载:https://download.csdn.net/download/qq_41898196/89557468


发布 🔔

关于编译好程序之后进行打包发布,可以参考该文章《通过PyInstaller把Python文件打包成应用程序》


支持 🔔

如果你觉得这个文章有帮助,请给它一个 👍 和 ⭐!

相关内容

热门资讯

截至发稿!都莱大菠萝辅助,小闲... 截至发稿!都莱大菠萝辅助,小闲川南辅助工具(好像真的是有下载)-哔哩哔哩1)小闲川南辅助工具免费钻石...
普及透视!wpk透视辅助方法,... 普及透视!wpk透视辅助方法,wpk辅助器是真的吗,确实有辅助软件(哔哩哔哩)1、下载好正确养号方法...
此事引发广泛关注!朋朋政和麻为... 此事引发广泛关注!朋朋政和麻为什么一直输,菠萝辅助器免费版的功能介绍(透视)确实真的有辅助攻略(哔哩...
透视模拟器"哈糖大菠... 透视模拟器"哈糖大菠萝免费辅助器"德普之星透视辅助插件(一贯有辅助app)-哔哩哔哩1、德普之星透视...
开挂透视!wpk辅助软件,wp... 开挂透视!wpk辅助软件,wpk有作比弊吗,果然一直都是有辅助app(哔哩哔哩)1、这是跨平台的轻量...
据了解!八张透视辅助,奇迹山西... 据了解!八张透视辅助,奇迹山西辅助器(好像是真的脚本)-哔哩哔哩1、玩家可以在奇迹山西辅助器透视最简...
随着!广西老友玩友破解视频,a... 随着!广西老友玩友破解视频,aa poker辅助包(透视)确实是真的有辅助app(哔哩哔哩)1、打开...
透视挂透视"wepo... 透视挂透视"wepoker开辅助能查到吗"拱趴大菠萝有什么挂(果然存在有辅助修改器)-哔哩哔哩1、用...
围绕透视问题!九哥玩辅助软件安... 围绕透视问题!九哥玩辅助软件安装,多乐手游辅助(好像是有修改器)-哔哩哔哩1、操作简单,无需九哥玩辅...
透视透视!wpk刷入池率脚本,... 透视透视!wpk刷入池率脚本,wpk透视怎么安装,真是有辅助技巧(哔哩哔哩)1、不需要AI权限,帮助...