当前位置:  开发笔记 > 编程语言 > 正文

问题re:使用Python进行GUI编程的当前状态

如何解决《问题re:使用Python进行GUI编程的当前状态》经验,为你挑选了1个好方法。

我最近做了一些工作修改使用wxPython小部件的Python gui应用程序.我已经在过去的六七年中尝试过Python,但这是我第一次使用gui进行任何工作.我对使用Python的gui编程的当前状态感到非常失望.我非常喜欢Python语言本身,这是我习惯的Delphi/ObjectPascal编程的一个有趣变化,对于通用编程任务来说肯定是一个很大的生产力提升.我想转向Python以获取一切.

但是wxPython是Delphi的VCL或.NET的WinForms之后的一大步.虽然Python本身通过编程更高级别的抽象提供了良好的生产力增益,但wxPython的使用方式比VCL更低的抽象级别.例如,我浪费了很多时间试图让wxPython列表对象按照我想要的方式运行.只是添加可排序的列涉及几个代码密集的步骤,一个用于创建和维护提供实际排序顺序的阴影数据结构,另一个用于在列标题中显示图形排序方向三角形,以及还有一些我不记得了.所有这些容易出错的步骤都可以通过使用我的Delphi网格组件设置属性值来完成.

我的结论是:虽然Python通过提高许多通用编码的抽象级别来提高生产率,但wxPython的几个抽象级别比Delphi的gui工具要.最终结果:使用Delphi进行gui编程比使用Python进行gui编程要快得多,而得到的带有Delphi的ui仍然更加精致和功能齐全.对我来说,似乎并不夸张地认为Delphi gui编程在1995年比使用wxPython的python gui编程更加先进.

我做了一些其他python gui框架的调查,看起来没有任何比wxPython好得多.我也对wxPython的gui formbuilders进行了一些简单的调查,这会让事情变得更好一些.但是大多数报道这些解决方案都是错误的,甚至一个伟大的formbuilder都无法解决我对wxPython的主要抱怨,这只是因为它具有较少的功能,并且通常要求你以比我低得多的抽象级别进行gui编程.以前用于Delphi的VCL.一些快速调查建议的python gui-dev解​​决方案(http://wiki.python.org/moin/GuiProgramming)对于习惯使用Delphi或.NET的人来说实在有些令人沮丧.

最后,我有几个问题.

首先,我错过了什么吗?是否有一些Python的gui开发解决方案可以与VCL或WinForms编程进行比较?我不一定关心它是否与Delphi的VCL不相符.我只是在找同一个联盟的东西.

第二,IronPython可以成为前进的方向吗?我大多试图避免喝.NET koolaid,但也许IronPython让我有理由最终放弃.即便如此,IronPython是否与WinForms完全集成,或者我需要让表单本身由c#或vb支持.净?在我看来,SharpDevelop和MonoDevelop就是这种情况(即,IronPython不能用于设计时间的gui构建).VS.NET是否将IronPython与gui-building完全集成?

在我看来,像Python一样可以"接管世界"的方式类似于Visual Basic在1990年代早期的方式,如果有一些精彩的新gui构建解决方案出现在Python中.只有这次使用Python,我们才能拥有全新的快速,跨平台和开源 gui编程范例 .企业不会吃掉它吗?是的,我知道,网络应用程序是当今最重要的事情,所以一个伟大的Python-gui解决方案不会创造VB曾经做过的同样的革命.但是我没有看到gui编程消失,我想要一个很好的现代,开源,高级解决方案.



1> Javier..:

似乎你的抱怨是关于wxPython,而不是关于Python本身.试试pyQt(还是qtPython?)

但是,wxPython和pyQt都只是对C/C++(分别)库的Python绑定,它与原始文件一样(概念上)低级.

但是,Qt远远优于wx

推荐阅读
拾味湖
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有