Answers:
如果您正在开发一些严肃的PyQt,尤其是您将学到的东西直接转换为使用其他语言的Qt(如果需要)的话,那么Qt可能是目前最好的跨平台界面工具包。
只有两个实际(潜在)缺点:
PyQt仅在GPL下可用。这意味着,如果您发布代码,则必须根据兼容许可,诺基亚GPL例外条款或商业许可(需要付费)才能使用该代码。这与Qt相反,后者现在可以在LGPL下使用。
Python安装默认不包括PyQt。您将必须自己打包该库。(关于Windows和OS X,Ars Technica上有一篇不错的文章。)
PyQt现在是我们的主要GUI工具包,经过1年的开发,我不想再谈其他任何事情。它是稳定,成熟,跨平台且完全原生的。甚至系统对话框(例如,打开文件)也是您的操作系统使用的对话框。
我调整了XP主题,现在相应地调整了我的应用程序外观。这会产生非常专业的外观,无法与之类的工具包媲美Swing
。该API范围很广,并且超出了诸如小部件之类的纯GUI的范围。它支持数据库连接性,打印,线程化(我用过它,并且像一个咒语一样工作),...我什至用它来生成PDF(不需要其他外部库)。我会推荐Mark Summerfield的书,《使用Python和Qt进行快速GUI编程》,以帮助您快速入门。请记住,Qt附带了一个GUI生成器(Qt设计器),这是我使用过的最好的工具(并且我尝试了很多)。
我什至使用此构建器来创建要显示给用户的模型(就这么简单!)。
我在这里向其他2个开发人员介绍了它,却没有听到他们抱怨...
我tkinter
用于具有简单界面的小型应用程序。我非常喜欢它,即使缺少好的WYSIWYG编辑器对于较大的应用程序来说也可能是个问题。
对于大型应用程序,PyQt
可能是一个更好的选择。它有一个非常好的屏幕设计师,但是许可可能会成为问题。
最后,wxPython
可能是一个不错的选择,因为它没有这些缺点。
您可以使用Tkinter创建巨大的GUI。如果您喜欢尝试pytkgen模块,它将有助于根据JSON定义创建Tkinter GUI:https : //github.com/tmetsch/pytkgen