综述
主流的 python
界面库如下:
根据[1]中所描述的 Python
界面框架,可以知道其基础的界面框架分为以下几个
- tkinter
- wxPython
- PyGObject - 替代 pyGTK
- pyGTK
- pyQT - Qt
- pySide - Qt
- Kivy - OpenGL ES
- PyGame - SDL
- PyGlet
- PySciter - sciter
- PySimpleGUI - Qt,tkinter,wxPython
在 python
中可以使用 OpenGL
与 DirectX
详细内容
opengl
安装 opengl
python -m pip install PyOpenGL
tkinter
tkinter
中使用 OpenGL的话需要安装 togl 包,感觉不太好安装
wxPython
python -m pip install wxPython
wxPython
中提供了 GLCanvas 模块用于 OpenGL 开发
经过测试,发现开发简单且易用
PyGObject
PyObject 安装有点麻烦,暂时略过
PyQt5
PyQt5 是 riverbank computing 编写
PyQt的采用的是GPLv3许可证和需要购买版权的商业许可证发布的,该许可证允许开发专有应用程序,可以由开发者选择。
安装
python -m pip install PyQt5
PySide2
PySide2 是 qt 官方发行的
kivy
python -m pip install kivy
与 PyGame 类似,对 OpenGL 支持较好
pygame
主流的 python 小游戏开发框架
python3 -m pip install -U pygame --user python3 -m pygame.examples.aliens
PySciter
是一个 html css 渲染引擎
总结
在 python 下有大量界面框架,由于 python 的脚本语言特性,相对的其提供了浏览器UI与应用程序UI 两套UI体系。
浏览器 UI
应用程序 UI
本次研究的 应用程序 UI主要是近期更新且广泛使用的UI框架
tkinter 是python 标准库内包含的 UI 框架,是平台原生的 UI,比较简单;因此若编写复杂界面时代码量会比较大;不过其 UI 效率尚可。
wxPython 是基于 wxWidget UI框架的python 版,相对 Qt 框架比较小;其界面也是平台原生界面。对比 tkinter 功能比较完善。
Qt - python 中的 qt框架主要有两个 pyqt 与 pyside
Pyqt 是 riverbank 发行的,就目前的使用体验来说没有 pyside2 完美
PySide2 是 Qt 官方发行的 python 版本,基本与 C++ 的 Qt 一致,功能比较全,当然体系也较为庞大。
Gtk - pyGtk 与 PyGObject 均是基于 Gtk UI 框架的,在linux上应该比较好,就目前来看安装比较复杂,不予考虑。
Comments | NOTHING