python开发gui界面跨平台_用户界面-用于部署Python应用程序的跨平台GUI工具包

2023-05-16

请不要犹豫,扩大这个答案。

Tkinter

Tkinter是python随附的工具包。 这意味着您已经具备编写GUI所需的一切。 这也意味着,如果您选择分发程序,则很可能其他所有人已经拥有了运行程序所需的东西。

Tkinter是成熟且稳定的,并且(至少可以说)非常易于使用。我发现它比wxPython易于使用,但是显然这是主观的。

Tkinter看起来丑陋且过时,因此受到了不好的说唱。 使用Tkinter创建丑陋的GUI确实很容易,但是创建美观的GUI也很容易。 Tkinter不会握住您的手,但是也不会很碍事。 Tkinter在Mac和Windows上看起来最好,因为它在那里使用了本机窗口小部件,但在Linux上看起来也不错。

关于Tkinter外观的另一点是,在大多数情况下,外观并不像人们想象的那么重要。 用工具包编写的大多数应用程序(例如Tkinter,wxPython,PyQT等)都是特殊用途的应用程序。 对于这些工具箱所用于的应用程序类型,可用性胜过一切。 如果应用程序的外观很重要,则可以轻松地完善Tkinter应用程序。

Tkinter具有一些其他工具包无法比拟的功能。 变量轨迹,命名字体,几何(布局)管理器以及Tkinter处理事件的方式仍然是判断其他工具包所依据的标准。

不利的一面是,Tkinter是围绕在Python内部运行的Tcl解释器的包装。 对于使用Tkinter开发的任何人来说,这几乎是看不见的,但是有时会导致暴露此体系结构的错误消息。 您将抱怨一个名称为“ .1245485.67345”的小部件,如果您不熟悉Tcl / tk的工作原理,这对任何人来说几乎是没有意义的,您将因此而报错。

另一个缺点是,Tkinter没有像wxPython那样多的预构建窗口小部件。 例如,Tkinter中的分层树小部件有点弱,并且没有内置的表小部件。 另一方面,Tkinter的画布和文本小部件非常强大且易于使用。 对于大多数类型的应用程序,您将编写,但是,您将拥有所需的一切。 只是不要期望使用Tkinter复制Microsoft Word或Photoshop。

我不知道Tkinter的许可证是什么,我认为与整个python的许可证相同。 Tcl / tk具有BSD样式的许可证。

PyQt

它基于Ct框架Qt构建。 它相当先进,并且具有一些不错的工具,例如Qt Designer来设计您的应用程序。 不过,您应该知道,它听起来并不像Python 100%,但接近它。 该文档非常好

这个框架真的很好。 它由诺基亚拥有的Trolltech积极开发。 Python的绑定由Riverbank开发。

PyQt可根据GPL许可或商业许可获得。 每个开发人员的河岸PyQt许可证价格约为400欧元。

Qt不仅是一个GUI框架,而且还有许多其他类,人们可以仅使用Qt类来创建应用程序。 (例如SQL,网络,脚本等)

Qt曾经在每个平台上模拟GUI元素,但现在使用平台的本机样式(尽管不是本机GUI工具包):请参阅Mac OS X和Windows XP样式的文档

打包就像运行py2exe或pyInstaller一样简单。 我的PyQt应用程序的内容在Windows上看起来像这样(我已在其顶部使用InnoSetup进行正确安装):

pyticroque.exe PyQt4.QtGui.pyd unicodedata.pyd

MSVCP71.dll PyQt4._qt.pyd unins000.dat

MSVCR71.dll python25.dll unins000.exe

PyQt4.QtCore.pyd sip.pyd _socket.pyd

QT带有小部件设计器,甚至在最新版本中都带有IDE,以帮助设计Qt软件。

派赛德

PySide是绑定到Qt的LGPL。 它是由诺基亚开发的,用于替代GPL PyQt。

虽然根据不同 技术比现有 GPL许可的PyQt绑定,PySide 最初的目标是 与它们兼容的API。 此外 兼容PyQt的API,更多 Pythonic API将在 未来。

wxPython

wxPython是使用wxWidgets-Framework的Python绑定。 该框架由LGPL许可,由开源社区开发。

我真正缺少的是设计界面的好工具,它们大约有3个,但是没有一个可用。

我应该提到的一件事是,尽管我没有使用任何高级功能,但在选项卡视图中还是发现了一个错误。 (仅在Mac OS X上)我认为wxWidgets不如Qt好。

wxPython实际上仅是关于GUI类的,没有太多其他了。

wxWidgets使用本机GUI元素。

wxPython与Tkinter相比的一个优点是wxPython具有更大的小部件库可供选择。

其他

我没有其他GUI框架的经验,也许其他人也没有。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python开发gui界面跨平台_用户界面-用于部署Python应用程序的跨平台GUI工具包 的相关文章

随机推荐