在Windows上选择GUI(wxPy vs pyQt)

Gol*_*vko 17 user-interface wxpython pyqt

我们计划开发一个用于监视和配置服务的应用程序(在远程服务器上运行).经过长时间的讨论,我们决定将python作为我们app的平台,因为我们喜欢并了解python.但是我们不知道,GUI工具包对于我们的目标是首选的.我们需要快速(用于开发和运行)应用程序,其用户将是管理员,维护人员和客户经理.

python有两个GUI工具包,我们知道:wxPythonpyQT.任何人都有关于赞成和反对的论据?也许有人知道任何商业应用程序,使用这些产品(只有python版本的工具包)?链接是可取的.

谢谢.

Cyb*_*nic 12

经过大量研究后我选择了wxPython.原因是:

  • Rappin&Dunn撰写的"wxPython in Action"一书
  • 作为wxPython下载的一部分的大量示例
  • 使用wxWidgets的项目数
  • 事实上,wxPython代码在Linux,Mac OS/X和Win32上运行良好

我确实考虑过pyQT和其他研究人员成功使用它.在我考虑的所有API中写了很多例子之后,我发现wxPython为我勾选了最多的盒子.

至于Tkinter(TIX),我觉得它看起来很过时了.除非您使用IronPython或Jython,否则我不会考虑使用关联的本机窗口API.对于另一个仅在.Net上交付的项目,我计划在StackOverflow成员提供大量反馈后使用WinForms.

  • 声明"... wxPython代码在Linux,Mac OS/X和Win32上同样运行良好"有点夸大其词.我经常发现三个平台之间的差异.某些小部件暗示在某些平台上没有实现.某些小部件在不同平台上抛出错误或具有不同的行为.它并非普遍存在,但平台之间存在真实存在. (2认同)

Sha*_*son 9

好吧,我是QT的粉丝:它具有更现代的外观和感觉.但是 - 您的选择应该基于您的实际要求.简单的贸易研究对此有所帮助.列出工具包必须具备的功能以及最适合的功能,然后适当地对每个项目进行加权.然后查看所有选项(TKinter也),然后根据您的功能列表(使用您为每个功能要求指定的权重)对它们进行评分.最后,应该明确哪一个适合您的项目.


Ale*_*lli 6

我一直很喜欢Qt的"信号和插槽"概念模型,不过我想对于那些更习惯于其他模型的事件传播和处理的开发人员来说可能需要一些学习.就个人而言,如果有选择,我会选择PyQt,因为这个编程方面.


Bry*_*ley 5

您写道“我们知道有两个用于 python 的 GUI 工具包:wxPython 和 pyQT。” 您忘记了最明显的工具包:tkinter。这实际上是核心 python 发行版的一部分,无需额外下载。

有些人不喜欢 Tk,但这通常是由于无知。Tk 是跨平台工具包的不错选择。它在 Windows 上使用本机小部件(并且已经使用了很多年),最新版本的 tk 在所有平台上使用主题小部件。