适用于wxPython或Tkinter的GUI设计器的Nice IDE

时间:2009-04-29 04:17:26

标签: python user-interface ide wxpython tkinter

我在使用Python开发小型命令行应用程序方面有一点经验。我想继续用Python开发GUI。从Python的可用GUI工具包中,我认为最喜欢的是 wxPython Tkinter ;但我不想一直自己编写所有的GUI代码。

这些工具包中是否有任何好的GUI IDE?它不需要是免费的或开源的。

8 个答案:

答案 0 :(得分:31)

我将仅讨论WxPython,因为它是我遇到的唯一工具包。 TkInter很适合编写小程序(然后它不需要GUI设计器),但不适合大型应用程序开发。

  • wxFormBuilder非常好:它会生成您需要在程序中加载的.XRC个文件,并且可以在您使用时通过子类化生成.py个文件。

  • DialogBlockswxDesigner是两个商业软件,可以直接生成Python代码。由于价格原因,我没有对这些进行过多次测试。

  • wxGlade(我认为)对于大型程序还不够成熟,但值得一试。

尝试了所有这些后,我意识到他们有所有缺陷并且没有什么比在编辑器中编写GUI更好了。问题是扩展的学习曲线。但是,与使用GUI设计器相比,您将更加快速,并且您的代码将更加灵活。

看看用wxPython编写的这个list of major applications。您可能会发现其中没有一个使用GUI Designer,因此必须有这样的理由。

当您说要切换到PyQt或手动编写应用程序时,您理解 gs 是正确的。我过去看过Qt Designer,认为这就是我需要的。不幸的是,PyQt有一些许可限制。

答案 1 :(得分:15)

这可能无法直接回答您的问题,但我选择了PyQt,因为wxPython没有优秀的UI设计师。

显然,您要么手动编写GUI,要么切换到PyQt。

由于诺基亚和Riverbankcomputing无法就LGPL解决方案达成一致,诺基亚决定建立自己的绑定:PySide

答案 2 :(得分:5)

Boa Constructor 有一个WxPython GUI构建器。

答案 3 :(得分:4)

我使用xrced(附带wxPython)。 GUI在xml文件中定义,你有一个自动生成的python文件,可以自动进行一些初始化,然后你将这些自动生成的类子类化,然后手动完成剩下的初始化。我发现这是将手工编写的GUI代码的优雅与GUI代码生成轻松融合的好方法。

对于我使用WingIDE的代码,在处理像wxPython这样的大型库(或者你喜欢的框架)时,有一个好的debuger和良好的源代码完成是有帮助的。

如果你想要更多的自动化(以及更丑陋的代码),请尝试最新版本的Boa,在ShowMeDo.com

上有一些很好的介绍性截屏视频

答案 4 :(得分:1)

试试VisualWx。我认为GUI设计师非常好;然而,IDE是相当简陋的(没有代码完成,调试等)。我的工作模式是拥有VisualWx和一个像Komodo Edit / Netbeans / etc这样的好编辑器。同时打开并根据需要在它们之间切换。

答案 5 :(得分:1)

我将Eclipse与PyDev一起用作我的Python IDE(这可能不是最好的解决方案,但它相当不错)

对于GUI开发,我已经将wxGlade用于中型项目,发现使用WxPython的概念非常容易。 XML生成对于将实际GUI设计与程序逻辑分离非常有用。

所有这些都是免费的。

答案 6 :(得分:0)

我已经将wxGlade用于一些关键任务应用程序。如果你在wx中有点弱,那可能很粗糙,但是一旦你习惯它,它就是一个很好的工具。

答案 7 :(得分:0)

不是真正的GUI IDE,但它允许您在JSON文件中定义Tkinter GUI:https://github.com/tmetsch/pytkgen