是否有用于Python的"易于编程" GUI工具包?

时间:2020-03-05 18:45:25  来源:igfitidea点击:

我玩过GTK,TK,wxPython,可可,诅咒等游戏。它们非常可怕。GTK/ TK / wx / curses似乎基本上都是适当C库的直接端口,而Cocoa基本上要求同时使用PyObjC和Interface Builder,我都不喜欢。

用于Ruby的Shoes GUI库非常棒。它的设计非常合理,非常"红",它从网络开发中借用了一些好用的东西(例如使用十六进制颜色代码或者:color => rgb(128, 0,0))

如标题所述:是否有任何不错的" Pythonic" GUI工具包?

解决方案

回答

我已经使用Glade取得了一些成功,尽管我没有设法将精力集中在创建任何真正复杂的事情上。它具有一个不错的GUI生成器,并将表单存储为动态加载的xml文件。有点像XAML怪胎。

回答

我们看过Qt / PyQt吗?尽管PyQt是C ++库的直接端口,但是与我们列出的其他库相比,我发现它具有更多的pythonic风格,并且程序编写起来非常好。它也有很好的文档。

Dabo在wxPython之上实现了一个不错的ui库。这是一个主要用于以数据库为中心的应用程序的框架,但是ui库可以单独使用。

在/已经有其他一些尝试在PyGtk或者wxPython的顶部创建一个非常pythonic的gui作为层,例如蜡和PyGui,它们似乎在完成的各个程度上"卡住了"。

另外,可以在此处找到Python GUI工具包的详尽列表。

回答

借用PyQt。结合本书《使用Python和Qt进行快速GUI编程》,它真的很容易学习。

回答

我使用pyGtk。我认为wxPython很好,但是它太有限了,而PyQt是Qt。 =)

回答

请查看我们的桌面应用程序框架Dabo。 http://dabodev.com

我们为UI类包装了wxPython工具包,并用简单的属性替换了它们难看的C ++样式函数。我们提到了分配颜色:在Dabo中,我们可以使用以下选择非常简单地完成此操作:

obj.BackColor = "red"
obj.BackColor = (255, 0, 0)
obj.BackColor = "FF0000"
obj.BackColor = "#FF0000"

Dabo理解所有这些,并自动为我们处理差异。

我是Dabo的作者之一,很高兴回答我们可能遇到的其他问题。

-埃德·叶菲(Ed Leafe)