PySide2 与 Pyqt5 的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PySide2 与 Pyqt5 的区别相关的知识,希望对你有一定的参考价值。

参考技术A 参考: Differences Between PySide and PyQt/zh & PyQt5 vs PySide2: What's the difference between the two Python Qt libraries?

PySide 只支持 PyQt 的 API 2(详见 PSEP 101 ) 。新的 API 2 提供了 Qt 类和 python 原生数据类型之间的自动转换,这样本质上也更 Pythonic。

PyQt5 这样写:

PySide2 这样写:

为了载入 UI 到 PyQt5 对象,例如 QMainWindow.__init__ 之中,您可以调用 uic.loadUI 函数并传入 self 参数,即:

而 PySide2 不支持这种以 self 作为第二个参数的方式。如果您想要令 PySide2 实现上述功能,可以这样:

PyQt5:

而 PySide2:

在调用的时候:

PyQt5:

而 PySide2:

PyQt5 使用 pyqtSignal 和 pyqtSlot ,而 PySide2 使用 Signal 和 Slot 自定义信号与槽。

或者

为了统一,可以定义 qt.py 文件:

其他文件调用时:

以上是关于PySide2 与 Pyqt5 的区别的主要内容,如果未能解决你的问题,请参考以下文章

具有内置多处理功能的 PySide2

在 PyQt5 和 PySide2 中覆盖paintEvent

在 PyQt5/Pyside2 中动态添加小部件到流布局

PyQt5 & PySide2 / 无法在“”中加载 Qt 平台插件“windows”,即使找到了

如何在 PyQt5 / PySide2 中从一个类访问属性到另一个类

PySide2(PyQt5)根据屏幕大小初始化窗口大小