跳转至

PyQt5 简介

原文: http://zetcode.com/gui/pyqt5/introduction/

这是 PyQt5 入门教程。 本教程的目的是帮助您开始使用 PyQt5 工具包。 该教程已在 Linux 上创建并测试。 PyQt4 教程涵盖了 PyQt4,它是 Python 语言(2.x 和 3.x)与 Qt4 库的融合。

关于 PyQt5

PyQt5 是 Digia 的一组 Qt5 应用框架的 Python 绑定。 它适用于 Python 2.x 和 3.x。 本教程使用 Python3。Qt 库是功能最强大的 GUI 库之一。 PyQt5 的官方主页是 www.riverbankcomputing.co.uk/news 。 PyQt5 由 Riverbank Computing 开发。

PyQt5 被实现为一组 Python 模块。 它具有 620 多个类和 6000 种功能和方法。 它是一个多平台工具包,可在所有主要操作系统(包括 Unix,Windows 和 Mac OS)上运行。 PyQt5 是双重许可的。 开发者可以在 GPL 和商业许可之间进行选择。

PyQt5 安装

$ sudo pip3 install pyqt5

我们可以使用pip3工具安装 PyQt5。

PyQt5 模块

PyQt5 的类分为几个模块,包括以下模块:

  • QtCore
  • QtGui
  • QtWidgets
  • QtMultimedia
  • QtBluetooth
  • QtNetwork
  • QtPositioning
  • Enginio
  • QtWebSockets
  • QtWebKit
  • QtWebKitWidgets
  • QtXml
  • QtSvg
  • QtSql
  • QtTest

QtCore模块包含核心的非 GUI 功能。 该模块用于处理时间,文件和目录,各种数据类型,流,URL,mime 类型,线程或进程。 QtGui包含用于窗口系统集成,事件处理,2D 图形,基本图像,字体和文本的类。 QtWidgets模块包含的类提供了一组 UI 元素,以创建经典的桌面样式用户界面。 QtMultimedia包含用于处理多媒体内容的类和用于访问相机和收音机功能的 API。

QtBluetooth模块包含用于扫描设备以及与它们连接和交互的类。 QtNetwork模块包含用于网络编程的类。 这些类通过使网络编程更加容易和可移植性,来简化 TCP/IP 和 UDP 客户端和服务器的编码。 QtPositioning包含用于通过使用各种可能的来源(包括卫星,Wi-Fi 或文本文件)确定位置的类。 Enginio模块实现了用于访问 Qt 云服务托管应用运行时的客户端库。 QtWebSockets模块包含实现 WebSocket 协议的类。 QtWebKit包含基于 WebKit2 库的 Web 浏览器实现的类。 QtWebKitWidgets包含用于基于 WebKit1 的 Web 浏览器实现的类,以用于基于QtWidgets的应用。

QtXml包含用于处理 XML 文件的类。 该模块提供了 SAX 和 DOM API 的实现。 QtSvg模块提供了用于显示 SVG 文件内容的类。 可伸缩向量图形(SVG)是一种用于描述 XML 中的二维图形和图形应用的语言。 QtSql模块提供用于处理数据库的类。 QtTest包含可对 PyQt5 应用进行单元测试的功能。

PyQt4 和 PyQt5 的区别

PyQt5 与 PyQt4 向后不兼容。 PyQt5 有几个重大变化。 但是,将旧代码调整为新库并不是很困难。 除其他外,差异如下:

  • Python 模块已重新组织。 一些模块已删除(QtScript),其他模块已拆分为子模块(QtGuiQtWebKit)。
  • 引入了新模块,包括QtBluetoothQtPositioningEnginio
  • PyQt5 仅支持新型信号和槽处理器。 不再支持对SIGNAL()SLOT()的调用。
  • PyQt5 不支持 Qt v5.0 中标记为已弃用或过时的 Qt API 的任何部分。

Python

python logo Python 是一种通用的,动态的,面向对象的编程语言。 Python 语言的设计目的强调程序员的生产力和代码可读性。 Python 最初是由 Guido van Rossum 开发的。 它于 1991 年首次发布。Python 受 ABC,Haskell,Java,Lisp,Icon 和 Perl 编程语言的启发。 Python 是一种高级通用通用解释型语言。 Python 是一种简约语言。 它最明显的功能之一是它不使用分号或方括号。 它改用缩进。 目前,Python 有两个主要分支:Python 2.x 和 Python3.x。 Python 3.x 打破了与早期版本 Python 的向后兼容性。 它的创建是为了纠正该语言的某些设计缺陷并使该语言更简洁。 Python 由世界各地的一大批志愿者维护。 Python 是开源软件。 对于那些想学习编程的人来说,Python 是一个理想的起点。

本教程使用 Python 3.x 版本。

Python 编程语言支持多种编程样式。 它不会强迫程序员采用特定的示例。 Python 支持面向对象和过程编程。 对函数式编程的支持也很有限。

Python 编程语言的官方网站是 python.org

Perl,Python 和 Ruby 是广泛使用的脚本语言。 它们具有许多相似之处,并且是紧密的竞争对手。

本章是对 PyQt5 工具包的介绍。



回到顶部