PyQt5教程阅读须知

“PyQt5教程”系列若不做明显提示,默认翻译自zetcode

有需要翻译精度的朋友可以自行阅读英文文档。

如果本系列博文侵犯了您的合法权益,请在博客中留下评论或联系:chen_dev@outlook.com。我会及时修改和删除。

本PyQt5教程系列其他博文中将不做另外声明。

PyQt5介绍

这是一份PyQt5的教程。教程的目的是让你开始学会使用PyQt5工具包。这个教程的内容在Linux上创建并测试。

PyQt5相关

PyQt5是一套来自Digia的Qt5应用框架和Python的粘合剂。支持Python2.x和Python3.x版本。本教程使用Pyhton 3。Qt库是最强大的GUI支持库的一种。PyQt5的官方主页是www.riverbankcomputing.co.uk/news。是Riverbank Computing开发了PyQt5。

PyQt5以一套Python模块的形式来实现功能。它包含了超过620个类,600个方法和函数。它是一个多平台的工具套件,它可以运行在所有的主流操作系统中,包含Unix,Windows和Mac OS。PyQt5采用双重许可模式。开发者可以在GPL和社区授权之间选择。

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的支持库。 QtWebKitWidgets 模块包含的关于WebKit1的类基本解决浏览器使用基于QtWidgets应用问题。 QtXml 模块包含的类用于解析XML文件。这个模块提供SAX和DOM API解决方法。 QtSvg 模块提供类用于显示SVG文件内容。Scalable Vector Graphics (SVG) 是一种语言,用XML来描述二维图形和图形应用程序。 QtSql模块提供类驱动数据库工作。 QtTest 模块包含了方法提供PyQt5应用的单元测试。

PyQt4 和 PyQt5 的不同之处

The PyQt5 is not backward compatible with PyQt4; there are several significant changes in PyQt5. However, it is not very difficult to adjust older code to the new library. The differences are, among others, the following:

PyQt5不向后兼容PyQt4;这是一些在PyQt5中的重要改变。然而,将旧代码迁移到新的版本中并不是非常困难。不同点如下:

  • Python 模块已经被改写. 一些模块被舍弃 (QtScript), 部分的模块被分割成子模块 (QtGuiQtWebKit).
  • 新的模块被引进, 包含 QtBluetoothQtPositioning, 和 Enginio.
  • PyQt5 只支持最新风格的信号和槽的写法. SIGNAL()和SLOT()的调用将不会被长时间支持.
  • PyQt5 不支持任何在Qt 5.0版本中弃用或取消的API.

PyQt5教程——介绍(1)的更多相关文章

  1. PyQt5教程——第一个程序(2)

    用PyQt5写的第一个程序 在这篇PyQt5教程中,我们可以学习一些PyQt5的基础应用. 简单的例子 这是一个显示一个小窗口的简单例子.我们可以做许多这样的窗口.我们可以调整它的窗口尺寸,最大化或最 ...

  2. PyQt5 教程地址

    https://maicss.gitbooks.io/pyqt5/content/介绍.htmlPyQt5{ QtCore { BasicTimer#定时器 } QtWidgets#窗口工具 { QA ...

  3. 最近想学Json,请问大家有没有什么好的Json教程介绍一下?

    最近想学json,请问大家有没有什么好的Json教程介绍一下? 最近学完java的框架了,想了解一下json,可是找不到相关视频,请大家有这方面的Json教程好资料就介绍下啦,最后有网址链接啦. {} ...

  4. PyQt5整体介绍

    1 PyQt5整体介绍 PyQt5是基于图形程序框架Qt5的Python语言实现,由一组Python模块构成. PyQt5的官方网站是:www.riverbankcomputing.co.uk. Py ...

  5. PyQt5教程——对话框(6)

    PyQt5中的对话框 对话框窗口或对话框是大多数主流GUI应用不可缺少的部分.对话是两个或更多人之间的会话.在计算机应用中,对话框是一个用来和应用对话的窗口.对话框可以用来输入数据,修改数据,改变应用 ...

  6. PyQt5教程——事件和信号(5)

    PyQt5中的事件和信号 在这部分PyQt5编程教程中,我们探索应用中事件和信号的发生. 事件 所有的GUI应用都是事件驱动的.事件主要由应用的用户操作产生的.但是事件可能由其他条件触发,比如:一个网 ...

  7. PyQt5教程——布局管理(4)

    PyQt5中的布局管理 布局管理是GUI编程中的一个重要方面.布局管理是一种如何在应用窗口上防止组件的一种方法.我们可以通过两种基础方式来管理布局.我们可以使用绝对定位和布局类. 绝对定位 程序指定了 ...

  8. PyQt5教程——菜单和工具栏(3)

    PyQt5中的菜单和工具栏 在这部分的PyQt5教程中,我们将创建菜单和工具栏.菜单式位于菜单栏的一组命令操作.工具栏是应用窗体中由按钮和一些常规命令操作组成的组件. 主窗口 QMainWindow类 ...

  9. PyQt5教程——组件 Ⅱ(八)

    这部分的教程将会继续介绍PyQt5的组件.我们这节教程的内容将包括像素图(QPixmap),单行文本框(QLineEdit)和下拉列表框(QComboBox) 像素图(QPixmap) 像素图(QPi ...

随机推荐

  1. Vue基础知识简介

    基础知识: vue的生命周期: beforeCreate/created.beforeMount/mounted.beforeUpdate/updated.beforeDestory/destorye ...

  2. js判断手机端和pc端

    var browser = { versions: function() { var u = navigator.userAgent, app = navigator.appVersion; retu ...

  3. C++ 模板的编译 以及 类模板内部的实例化

    在C++中.编译器在看到模板的定义的时候.并不马上产生代码,仅仅有在看到用到模板时,比方调用了模板函数 或者 定义了类模板的 对象的时候.编译器才产生特定类型的代码. 一般而言,在调用函数的时候,仅仅 ...

  4. 为DropDownListFor设置选中项

    在MVC中,当涉及到强类型编辑页,如果有select元素,需要根据当前Model的某个属性值,让Select的某项选中.本篇只整理思路,不涉及完整代码. □ 思路 往前台视图传的类型是List< ...

  5. ool _WebTryThreadLock(bool),

    一般的问题是这样的 “bool _WebTryThreadLock(bool), 0xxxxxx: Tried to obtain the web lock from a thread other t ...

  6. icanhazip.com 使你在不论什么地方知道你的公网IP地址

    icanhazip.com 使你在不论什么地方知道你的公网IP地址 icanhazip.com是一个网址,你在浏览器中输入这个网址,你就能得到你的公网IP地址了. 我在Linux下一般使用curl i ...

  7. Android几种Service常驻内存的小思路

    老话说的好:躲得了初一,躲只是高三 ! 大多数的Android开发人员遇到的一个问题-怎样保证Service常驻内存. 近期我最终也在项目中务必幸运的遇到了 先来了解一下什么是Service常驻内存. ...

  8. OpenCV学习(33) 轮廓的特征矩Moment

    在OpenCV中,可以很方便的计算多边形区域的3阶特征矩,opencv中的矩主要包括以下几种:空间矩,中心矩和中心归一化矩. class Moments { public: ...... // 空间矩 ...

  9. 混沌数学之Baker模型

    相关DEMO参见:混沌数学之离散点集图形DEMO 相关代码: // http://wenku.baidu.com/view/ac9b57ea172ded630b1cb65b.html class Ba ...

  10. elimination-game

    https://leetcode.com/problems/elimination-game/ // 一行代码就可以,不过原理有些复杂 // https://discuss.leetcode.com/ ...