什么是GUI
图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。
图形用户界面是一种人与计算机通信的界面显示格式,由窗口、下拉菜单、对话框及其相应的控制机制构成,允许用户使用鼠标、键盘等输入设备操纵屏幕上的图标或菜单选项,以选择菜单、点击按钮等方式与系统交互。与通过键盘输入文本或字符命令来完成例行任务的字符界面相比,图形用户界面有许多优点。
主流开发语言均有其GUI框架,列如:
java语言:AWT、Swing。
C#语言: Windows From WPF
C语言:Qt、GTK
C++语言:Qt、GTK、FLTK
GUI框架
那么,python可选的主流GUI框架有哪些呢?我们来总结下:
- Tkinter:Python 标准库的一部分,无需额外安装。
- PyQT、PySide:Qt 框架的 Python 绑定,功能强劲。
- wxPython:基于 wxWidgets 的 Python 绑定,外观接近原生应用。
- Kivy:专注于多点触控和移动端应用的框架。
- PySimpleGUI:封装了 Tkinter、PyQt 等框架,简化 GUI 开发。
- Toga:跨平台原生 GUI 框架,外观与操作系统一致。
- Remi:基于 Web 的 GUI 框架,界面通过浏览器访问。
接下来我们主要讨论下基于Qt的两种框架:PyQt和Pyside。
PyQt 是 Qt 框架的第一个 Python 绑定,由 Riverbank Computing 开发。它基于 Qt 的 C++ 实现,并通过 SIP 工具生成 Python 绑定。PyQt 最早于 1998 年发布,支持 Qt1 和 Qt2,后来逐渐支持 Qt4 和 Qt5。PyQt 采用 GPL(GNU General Public License)和商业许可证。如果使用 GPL 许可证,开发的开源项目必须公开源代码,商业项目需要购买商业许可证。
PySide 是 Qt 公司(The Qt Company)官方开发的 Python 绑定,最初由 Nokia 发起。PySide 项目始于 2009 年,目标是提供一个与 PyQt 兼容但许可证更友善的替代品。PySide 采用 LGPL(GNU Lesser General Public License)。LGPL 允许在开源和闭源项目中免费使用,无需公开源代码。
显而易见,在现阶段,PySide将是python语言GUI开发框架的优先选择。
PySide
综上所述,选择PySide的缘由主要有以下几点:
- 功能强劲:基于 Qt 框架,支持丰富的控件和现代化界面设计。
- 跨平台:除了支持 Windows 平台,还支持 macOS、Linux。
- 宽松的许可证:LGPL 许可证允许商业使用,无需公开源代码。
- 丰富的工具支持:如 Qt Designer 和 Qt Creator,提供可视化界面设计和开发支持。
- 高性能:Qt公司官方开发,底层基于 C++,性能优异,适合复杂应用。
PySide 的发展主要经历了两个重大的版本:PySide2 和 PySide6。PySide2 是 Qt5 的 Python 绑定。它提供了 Qt5 的所有功能模块,适用于开发基于 Qt5 的应用程序。PySide6 是 Qt6 的 Python 绑定。它基于 Qt6,支持 Qt6 的新特性(如改善的 QML、更好的性能和高 DPI 支持)。PySide6 是 PySide2 的升级版本,适用于开发基于 Qt6 的应用程序。



pyside才好用pyqt不友好还有版权
是的,看来你也搞过python的GUI开发
收藏了,感谢分享