【1】一文读懂PyQt简介和环境搭建

目录

[1. PyQt简介](#1. PyQt简介)

[1.1. Qt](#1.1. Qt)

[1.2. PyQt](#1.2. PyQt)

[1.3. 关于PyQt和PySide](#1.3. 关于PyQt和PySide)

[2. 通过pip安装PyQt5](#2. 通过pip安装PyQt5)

[3. 无法运行处理](#3. 无法运行处理)

[4. VSCode配置PYQT插件](#4. VSCode配置PYQT插件)


PyQt官网:Riverbank Computing | Introduction

1. PyQt简介

PyQt是一套Python的GUI开发框架,即图形用户界面开发框架。

Python中经常使用的GUI控件集有PyQt、Tkinter、wxPython、Kivy、PyGUI和Libavg

其中PyQt是Qt(c++语言实现的)为Python专门提供的扩展。

1.1. Qt

Qt 是一个1991年由Qt Company开发的跨平台C++图形用户界面开发框架。

2008年,Qt Company被诺基亚公司收购,Qt也因此成为诺基亚旗下的编程语言工具。

2012年,Qt被Digia收购。

2014年4月,跨平台集成开发环境Qt Creator 3.1.0正式发布

1.2. PyQt

  • 基础高性能的Qt的图形界面控件集
  • 能够跨平台运行在windows、linux和macos等系统上
  • 使用信号/槽(signal/slot)机制进行通信(其它语言采用回调方式)
  • 对Qt库的完全封装

1.3. 关于PyQt和PySide

首先推荐的就是PyQt,PyQt是Qt的Python版本,而Qt是一种成熟的GUI开发框架,底层是由C++开发而成,采用PyQt开发GUI,后面可以进一步转C++开发Qt,因此,如果想要入手图形用户界面开发,PyQt是非常推荐的一款框架,需要注意的是,PyQt有两种许可协议,分别是GPLv3许可证和需要购买版权的商业许可证,GPLv3是强开源协议,意味着,如果你的应用程序里面使用了PyQt,那么你的程序必须开源,否则可能收到法院传票,如果想要闭源商用,就必须购买Riverbank Computing公司的商业许可证。

但如果你既想享受Qt的强大功能,又想闭源商用,那么PySide适合你,说到PySide,就不得不说Qt与PyQt之间的恩怨,Qt的研发公司是Nokia,Riverbank Computing公司使用Python封装了Qt研发出PyQt,而PyQt从诞生时就是GPLv3协议,因此Nokia与Riverbank Computing谈判,希望将PyQt的协议修改为LGPLv3,可以带来更多的商业用户,但是两个公司谈崩了,所以Nokia自己重新研发了Py版本的Qt也就是PySide,后来Nokia将Qt和PySide卖给了Digia公司。

PySide官网Qt for Python

总结:

  • 如果不做商业项目,强烈建议使用PyQt,资料多,稳定。全局替换成PySide也很方便。
  • 需要开发闭源商用软件的就用PySide。所有API用起来几乎一样。
  • PyQt5的对应版本是PySide2

2. 通过pip安装PyQt5

  • pip install PyQt5 安装PyQt5
  • pip install PyQt5-tools 安装Qt工具软件
  • pip install PyQt5-stubs 安装PyQt5语法检测包(可选)

安装完成之后可以在Python的安装目录/Lib/site-packages中找到PyQt5目录。

路径示例:%LOCALAPPDATA%\Programs\Python\Python39\Lib\site-packages

如果安装缓慢,请配置pip源:

pip包管理工具-CSDN博客文章浏览阅读322次,点赞4次,收藏7次。pip 是 Python 包管理工具,该工具提供了对Python包的查找、下载、安装、卸载的功能。Python 2.7.9+ 或 Python 3.4+ 以上版本的python都自带 pip 工具。https://blog.csdn.net/bug_love/article/details/134748875?spm=1001.2014.3001.5502

3. 无法运行处理

如果运行PyQt程序报如下错误,不报错不需要配置!:

则将如下变量添加到系统环境中:

QT_QPA_PLATFORM_PLUGIN_PATH

值为:

%LOCALAPPDATA%\Programs\Python\Python39\Lib\site-packages\PyQt5\Qt5\plugins\platforms

重启编辑器或控制台即可

注意这里的%LOCALAPPDATA%\Programs\Python\Python39是你的Python安装路径,如果安装时不是默认路径,请将此部分内容替换成自己的安装路径。

建议直接使用Everything搜索qoffscreen.dll,找到目录。

4. VSCode配置PYQT插件

安装PYQT Integration插件,可以帮我们自动生成UI相关代码和资源。最好进行如下配置:

  1. 配置.ui生成的.py文件中导入资源的路径:--import-from=ui 指向ui目录
  2. 配置designer.exe可执行程序的路径,例如我的路径:D:\Programs\Python\Python39\Lib\site-packages\qt5_applications\Qt\bin\designer.exe
  3. 在Python安装路径下找designer.exe,建议用everything搜索designer.exe。如果搜不到,请先确保已安装PyQt5-tools, 安装方法:pip install PyQt5-tools

其他不用变

相关推荐
正经教主23 分钟前
【FDE系列】阶段2:Day 28:FastAPI 入门 — 把你的函数变成 API 服务
人工智能·python·fde
李航198328 分钟前
用 DeepDraw 几何引擎开发建筑设计软件(十):推挤工具
python·3d
VXbishe1 小时前
【课程设计】基于SpringBoot的乡村政务服务系统的设计与实现-计算机毕设77011
javascript·vue.js·spring boot·python·php·课程设计·政务
名字还没想好☜1 小时前
Python sqlite3 实战:事务提交、参数化防注入、WAL 并发与 row_factory 取字典
后端·python·编程语言
论文复现现场2 小时前
ComfyUI 怎么同时调用 4 张/8 张 RTX 4090?AI 视频批量生成的多实例队列与 Python 调度方案
人工智能·python·comfyui·rtx4090
泡海椒2 小时前
评分系统最佳实践:JQuick-Java实现权重、阈值动态配置评分
java·人工智能·python
weixin199701080162 小时前
《二手ERP对接的对账机制:按日巡检 + 自动补偿,消灭“幽灵订单“》(附Python源码)
python
m0_547486662 小时前
《Python数据分析与实践》全套PPT课件(杭州电子科技大学)
python·数据分析
OKkankan2 小时前
Python 基础进阶(三):从函数、类到 asyncio 与 FastAPI 后端开发实战
开发语言·python
智购科技自动售卖机厂家2 小时前
设备一到夏天就频繁跳闸,从启动电流追到压缩机电容~YH
数据结构·人工智能·python·eclipse