Python图形用户界面编程,许可证和理解

11

我最近一直在研究最好的跨平台UI工具包,并致力于Python开发。由于我是一个单独开发人员,刚从C#转过来,而且有可能在本地销售一些应用程序,所以我不希望使用太重的工具。

我试用了PyQt,并且开始喜欢上它了。尽管PyGTK更成熟,但我不是很了解它。

就像我之前说的,我对本地外观并不太关注,但请不要像Tk一样。我以前遇到了PyQt的许可问题,因为你可能无法销售使用该工具编写的程序。有人介绍了Pyside,但从我看到的情况来看,它并不稳定,也没有得到很好的维护。

  • 我的问题是,我能够销售使用PyQt编写的应用程序吗?
  • PyGTKPyQt更好吗?请给出理由。
  • 是否还有其他易于学习、实现和许可问题自由的Python跨平台UI工具包可以使用?

非常感谢您提供有教育意义的答复。


这是其他UI实现及其优点的列表:https://dev59.com/-XRB5IYBdhLWcg3wxZ1K - Will
谢谢,但我想我还是会坚持使用PyQt的小弟弟PySide。至少在这方面我不用担心商业许可问题。再次感谢。 - Temitayo
不客气,这是回答你的第三个问题(是否有其他易于学习和实现的平台)。祝你好运! - Will
2个回答

3
PyQt网站上了解到:
Riverbank的软件(PyQt5、PyQt4、PyQtChart、PyQtMobility、dip和QScintilla2)与Qt本身一样,根据使用情况提供多种许可证。免费版本是根据GNU通用公共许可证授权的。如果您使用Riverbank的软件与GPL兼容,则不需要购买商业许可证。如果您使用Riverbank的软件与GPL不兼容,则需要购买商业许可证。
我对GPL条款的基本理解是商业发布是可以的,但任何“使用”GPL许可的软件都必须在GPL兼容的许可下公开源代码。确切地说,“使用”的含义可能需要律师解释。
我从未成功地使用PyGTK,但是我使用LGPL许可的PySide创建简单GUI时没有遇到实质性问题。文档还好,我不得不参考Qt C++文档一些内容,但总体来说非常稳定,并且可以很好地与MatplotLib集成进行绘图。
例如,我使用PySide创建了这些具有实时绘图功能的简单GUI。第一个GUI只花费了大约10分钟手动编码,但是对于更复杂的GUI,您还可以使用QtDesigner。

Gui using PySide

GUI 2 using PySide


1
谢谢,对于那个粗话“GTk sucks”,我很抱歉,我会坚持使用Pyside。但是请问一下,PySide和PyQt是否使用相同的编码和库?您认为我可以在哪里获取到关于PySide的好文档?最后,Pyside似乎与Qt庞大的600Mb库捆绑在一起,您认为我可以像安装PyQt那样下载仅包含Pyside的捆绑包吗?谢谢,注意:我使用Windows 7。 - Temitayo
找到了PySide窗口二进制下载页面http://download.qt-project.org/official_releases/pyside/PySide-1.2.1.win32-py3.3.exe,还有剩下的PDF文档。谢谢,如果我发现任何有价值的东西,我会发布的。 - Temitayo
首先可以尝试这个 http://zetcode.com/gui/pysidetutorial/,除此之外还有 SO 和 Google。祝你好运! :) - will-hart
非常感谢,我想我已经不需要再通过谷歌搜索这个问题了。再次感谢。 - Temitayo
没问题。顺便提一下,在 Stack Overflow 上,如果一个回答正确地解决了你的问题,那么你应该使用小绿勾标记它...从查看你的个人资料来看,你还没有选择任何正确的答案! - will-hart

1

是否有其他跨平台易于学习、实现和授权的Python UI工具包可以使用?

尝试Kivy。采用MIT许可证,API和文档相当不错,可在Android和iOS上运行。

你有可能会爱上这个框架。你已经被警告了。


看过了,它是针对移动设备的,我想要一个面向Web的工具包,Pyside与Qt Designer一起学习起来更容易。 - Temitayo
“工具包”对于Web有什么意义?无论如何,我不会说移动设备,而是触摸设备。但你并不受此限制,实际上,你可以对鼠标右键的单击做出反应(你只需要设置一些变量)。这个展示只是为了向人们展示他们可以在触摸设备上使用它,不像其他大多数框架和库。” - Stan Prokop
我之前接触过Kivy,但也被它的“触摸”重点所远离。不过它确实看起来很有趣,例如:https://www.youtube.com/watch?v=F7UKmK9eQLY - will-hart
抱歉,我本意是想要一个桌面应用程序的工具包而不是“web”工具包。我真的很喜欢kivypymt,它们几乎相同,但它们不能满足我的需求。 - Temitayo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接