46
  • 需要那些具有最少健康经验的人的建议,以使用 Python 设计 GUI 界面。
  • 何时以及根据 GUI 复杂性选择什么?
  • 我们可以使用哪些 GUI 构建器来获得更好的开发质量?

这是我的第一个 GUI 设计,我在没有 GUI 构建器的情况下完成了它,因为我已经理解,wx.ListCtrl 的ObjectListView包装器本身并没有包含轻松的进度条或仪表元素。(参见图片中的“上传状态”栏)。

注意: ObjectListView 在.Net 版本中有进度条,目前在 wx.Python 中没有。

PS: 我发现了这个精彩的Python GTK+ 全栈教程

在此处输入图像描述

4

3 回答 3

26

我不确定你在问什么。wxPython 和 pyQt / pyside 可能是在所有平台上最容易使用的,并且在大多数操作系统上看起来都是正确的。我知道 wxPython 是专门为包装原生小部件而设计的,所以如果你希望你的应用看起来是原生的,我认为 wxPython 是最好的选择。如果您希望能够为您的应用程序设置主题/皮肤,那么 PyQT 或 pyGTK 可能会更好。

PyQt/PySide 在某种程度上支持移动设备,我不相信其他两个支持。如果您打算为移动设备编程,那么您可能想要走这条路或查看 Kivy。

PyQt/PySide 有一个非常强大的所见即所得编辑器。wxPython 有几个,但我不认为它们中的任何一个都支持 wx 的所有小部件,而且它们的支持参差不齐。这并没有阻止我,因为无论如何我都是手工编码的。

像往常一样,您可能需要阅读大量文档并尝试每个文档,看看哪一个最适合您的大脑并最能满足您的需求。

于 2013-10-25T13:31:19.300 回答
15

如果您想要跨平台兼容性,请不要使用 PyGTK。GTK3 还不能在 Windows 上工作(我上次检查过),GTK2 在 Windows 下有一个可怕的内存泄漏,这已在最新源中修复,但没有为 Windows 编译新版本。

我会投票支持 PySide(更灵活的商业选项许可)而不是 PyQt 和 PySide/PyQt 而不是 wxPython,因为我认为 GUI 设计器工具更好!能够以图形方式快速创建和编辑 GUI(并且独立于您的应用程序代码)可以节省大量时间。


更新:实际上,出于稳定性和长期支持的原因,我现在推荐 PyQt 而不是 PySide。PySide 开发滞后,修复错误的人很少,也没有人致力于支持 Qt 5。

于 2013-10-25T23:53:55.470 回答
15

Windows 中的 PyQT

Windows 中的 PyQT

PyGTK

PyGTK

KDE 中的 PyQT

KDE 中的 PyQT

  1. Windows 中的 PyQT
  2. PyGTK+3
  3. KDE 中的 PyQT

因此,如果您使用 PyQT,您的应用程序设计在不同的操作系统和桌面环境上看起来会有所不同。我没有 Macintosh,因此无法提供图片,我的应用程序在其中的外观如何。这是我用 PyQT 和 PyGTK+3 编写的应用程序之一。请记住,设计将与 PyGTK+3 保持原样,因此不会像在 PyQT 中那样有任何差异。这绝对是最容易学习的,因为有一个 Glade 程序可以帮助您构建您的设计,而无需花费一分钟手动编码。但是使用 PyQT,您可以微调应用程序设计,并且不会让您因错误而烦恼。

于 2013-12-25T13:47:03.547 回答