1 Qt 简介
Qt 是众多 GUI 框架里面非常著名的一款,是由挪威的 Trolltech(奇趣科技公司)开发的。它本身由 C++ 开发,天然支持基于 C++ 的 GUI 编程,编出来的图形化软件在当今众多 GUI 框架中运行效率极高,拥有完善的第三方库,极其适合数字图像处理、文档排版、多媒体、3D 建模等专业软件开发。与此同时,Qt 还有一个强大的功能:支持跨平台。
2 PySide 和 PyQt 的说明
目前,有两种 Qt 对应的 Python 工具:PySide 和 PyQt。
PySide 是 Qt 公司的产品,PyQt 是第三方公司的产品,二者用法基本相同,不过在使用协议上却有很大的差别。PySide 可以在 LGPL 协议下使用,PyQt 则在 GPL 协议下使用。这两个协议的区别就是,如果使用 PyQt,那么开发的软件就必须开源,否则就存在被告的风险。而 PySide 就没有这种约束,不管是开发商业闭源软件还是开源软件,你都可以不用开源代码。
由于两者提供的接口几乎是完全一致的,所以目前市面上 PyQt 的教程完全适合 PySide。因此,对于学习者来说,学习任何一个都是可以的。
PySide 目前常见的有两个版本:PySide2 和 PySide6。PySide2 由 C++ 版的 Qt5 开发而来,而 PySide6 对应的则是 C++ 版的 Qt6。使用层面上,PySide2 和 PySide6 没有过多的差异,只有一点需要注意,PySide6 开发的程序默认不兼容 Window7,这也是 Qt6 决定的。
3 PySide6 简介
Qt for Python 提供了 Qt 的官方 Python 绑定,允许用户使用 Python 编写 Qt 应用。该项目有两个主要的组件:
- PySide6,可以在你的 Python 应用中使用 Qt6 API。
- Shiboken6,一个绑定生成器工具,可被用于在 Python 中暴露 C++ 项目,并且是一个有些实用工具的 Python 模块。