Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Qt现在是在LGPL下发布的,您会推荐它而不是wxWidgets吗?_Python_Qt_Wxpython_Wxwidgets - Fatal编程技术网

Python Qt现在是在LGPL下发布的,您会推荐它而不是wxWidgets吗?

Python Qt现在是在LGPL下发布的,您会推荐它而不是wxWidgets吗?,python,qt,wxpython,wxwidgets,Python,Qt,Wxpython,Wxwidgets,我是wxWidgets的大量用户,部分是因为许可的原因 您如何看待wxWidgets在LGPL下发布的Qt前景中的未来 您认为wxwidget仍然是新项目的良好技术选择吗?或者你会建议采用Qt,因为它将成为事实上的标准 我还对它们与最常见的脚本语言(例如PyQt、wxPython、wxRuby)的绑定可能产生的影响感兴趣。为什么PyQt在拥有专业级设计师而wxPython没有的情况下使用率如此低 相关的: 老实说,我不认为人们会大量地离开WXWidget 对于python,有PyQt绑定和

我是wxWidgets的大量用户,部分是因为许可的原因

  • 您如何看待wxWidgets在LGPL下发布的Qt前景中的未来
  • 您认为wxwidget仍然是新项目的良好技术选择吗?或者你会建议采用Qt,因为它将成为事实上的标准
  • 我还对它们与最常见的脚本语言(例如PyQt、wxPython、wxRuby)的绑定可能产生的影响感兴趣。为什么PyQt在拥有专业级设计师而wxPython没有的情况下使用率如此低
相关的:


老实说,我不认为人们会大量地离开WXWidget

对于python,有PyQt绑定和WxPython绑定。尽管Qt比WxWidgets实用得多,但大多数GUI-python开源程序都是用WxWidgets编写的。因为这些程序都是开源的,所以GPL和LGPL在选择工具包时并没有那么重要

Gtk也是如此。许多开源应用程序都是在windows上用Gtk编写的,尽管Gtk在windows上很难使用。有了Qt,这些应用程序在跨平台的基础上维护起来会容易得多,但事实并非如此

因此,工具箱的选择受到许多参数的影响,授权只是其中之一


我仍然不明白为什么Qt不是更主流,因为在我看来,它是有史以来编写的最简单、更实用的GUI工具包。

Qt是非常全面和高质量的框架。我确信许多原本使用wxWidgets的新项目现在将使用LGPLQT。但已经使用wxWidgets的项目无疑将继续使用wxWidgets,而不是进行大规模的重写。

请注意,截至2009年1月,虽然Qt 4.5将在LGPL下提供,但Riverbank Computing尚未宣布未来版本的许可。PyQt仍然是唯一的


正如在本回答的评论中所指出的,诺基亚于2009年8月宣布了LGPL许可项目。

对于我们这些被wxWidgets吸引的人来说,因为它是一个跨平台的库,使用本机控件来获得正确的外观和感觉,Qt的许可变更几乎没有什么后果

编辑:

关于

Qt不具有本机控件,但具有本机绘图功能

让我引述:

Qt不像wxWidgets那样具有真正的本机端口。我们的意思是,尽管Qt非常逼真地绘制了它们,但Qt在每个平台上绘制了自己的小部件。值得一提的是,Qt为Mac OS X、Windows XP和Vista提供了特殊样式,这些样式使用本机API(Mac OS X上的外观管理器、Windows XP上的UxTheme)来绘制与任何本机应用程序完全相同的标准小部件原语(例如滚动条或按钮)。事件处理、结果视觉反馈和小部件布局始终由Qt实现


我目前在工作中使用pyqt,我发现自己完全满意。 您有更好的文档(IMHO),更好的事件管理(信号槽模式比旧的简单回调样式更强大),并且在像qt designer这样的图形设计器中导入自定义小部件要容易得多。 据我所知,qt设计器比任何wxpython对应物(如Boa构造函数和pyGlade)都更强大。 您还可以很好地支持用不同的语言翻译程序字符串(至少比wxLocale更好的支持,并且您可以使用像Qt语言专家这样的工具,它完全集成在Qt系统中)


我在一些霍布斯的作品中使用了wxpython,但在那里我仍然是个书呆子。我认为它比pyqt更大的优势是在不同的平台上具有本机的外观和感觉。例如,如果您正在开发windows/linux应用程序,这一点非常重要。实际上,您可以使用“皮肤”来获得windows qt应用程序的本机外观,但我不知道如何实现这一点(对不起,我从未在windows:D上使用过qt)。

我选择wxPython有两个主要原因:

  • 美国银行建造商, 这仍然是一个测试版产品,让我可以统一控制100%的过程,而PyQt确实有更好的设计器,但编辑“事件处理程序”之间没有联系
  • 我理想的IDE设计、创建事件,让我编辑所需的功能代码,然后运行;没有“编译UIC”,没有切换编辑器,没有进入命令行。 虽然对于大型应用程序来说,它无关紧要,但我目前的领域是快速和小型程序

  • 许可证。。。 现在这不重要,但一旦我开始小规模地出售我的东西,它就会发生

  • 对于事件代码,事件功能代码内部的自动完成在QTDesigner中似乎不起作用。我可能遗漏了一些东西,但是上面描述的“中断”过程阻止了它成为RAD


  • 我从未能够将Qt设置为交叉编译。我记得在Trolltech上看到一些东西,说他们官方不支持交叉编译,尽管我现在找不到

    有很多指南和详细说明如何让Qt交叉编译,所以我可能(很可能)做错了什么


    在选择框架时,我建议考虑并测试它们的交叉编译能力

    许可证确实很重要!如果你开始写一个软件,你不一定从一开始就认为它是开源的。因此,您将选择使用LGPL libs。这就是为什么Qt不是主流的原因,也是为什么大多数开源python程序使用wxpython,即使没有专业级的设计器,也许即将发布的Qt4.5将解决这个问题。它将有一个LGPL许可选项。@Mapad你是说Robin Dunn不专业!?自从我发表这一评论以来,很多事情都发生了变化:1。PyQt与Pytho一起工作