我正在考虑为数字硬件设计制作某种实验性IDE。所以我无法决定选择巫婆平台。
我将使用带语法高亮显示的文本编辑器,一些矢量图形和许多标签窗口。
我的目标: 1.使用尽可能少的自定义组件来使用GUI。 2.使其尽可能跨平台
(我已经知道CPython和Jython是跨平台友好的,但是IronPython + Mono呢?)
所以 - 关于GUI的问题 - 我应该选择什么?
答案 0 :(得分:9)
答案 1 :(得分:5)
答案 2 :(得分:5)
嗯,Mono没有附带大多数Linux发行版的基础。它也不是一个非常轻量级的依赖,而且我认为Java对于人们已经拥有的可能性要大得多。你打算在Mono上使用“Winforms”吗?如果是这样,并且您没有使用Winforms的经验,请阅读其他人的意见:-)其他.NET GUI工具包是WPF,遗憾的是Mono没有计划实施。
Jython也会更好,因为你可以使用SWT,它可以渲染原生小部件并轻松提供大量布局。或者你可以将Jython与Swing或其他任何东西一起使用 - 如果你喜欢丑陋,甚至可以使用AWT。
我非常喜欢wxPython(它可以与CPython一起使用,默认情况下是大多数发行版),因为它在OSX,Windows和Linux中呈现了漂亮的本机小部件(我只是亲自看过Gnome小部件) 。到目前为止,wxPython是我使用过的最容易使用的GUI工具包 - 甚至是编程方式(即没有Glade或类似的布局)。我也使用了SWT,我发现它非常好,而Swing,我个人并不喜欢它的外观和Winforms,这是一个噩梦,试图做简单的布局。
这是对操作系统
存在解释器/语言运行时的快速比较我会首先选择一个GUI工具包,因为这会对用户体验和整体难度产生很大影响(我会选择wxPython但SWT会紧随其后)然后考虑上面的内容以及作为决胜局。
答案 3 :(得分:3)
大约一年前我遇到了同样的问题。在查看了所有替代方案之后,我最终得到了CPython和PyQt。 IMO,Qt / PyQt是迄今为止所有Python GUI工具包中的最佳选择。在wxPython中遇到许多错误后,我切换到PyQt并且从未回头。根据我的经验,Qt / PyQt比wx工具包更加可靠。
我使用完全相同的代码库并构建独立的可执行文件,其中PyInstaller用于Windows,Py2App用于Mac(PyInstaller也可用于Linux)。因为这些构建器嵌入了Python解释器和所有依赖项,所以需要花费很多麻烦。唯一的问题是你需要Windows和Mac来进行构建。让所有配置正确也是一件痛苦的事情,但是有可能并且值得花时间投资。
答案 4 :(得分:2)
答案 5 :(得分:2)
Java 是最便携的平台。 Jython是用100%纯Java编写的。 '努夫说。
BTW我只是将一个CPython / GTK项目切换到Jython(尝试尽可能多地删除非托管代码),唯一的问题是Jython仍然处于2.5,当你习惯2.6 / 2.7时这种情况很糟糕/ 3:)答案 6 :(得分:1)
已经有很多答案,但我想补充一点重要的事情 - 无论你学习哪个库,当你搬到另一个图书馆时,大部分原则都是一样的。
我不知道Qt,但对于大多数图形程序(在PyGTK或Tkinter中),就编辑而言,最好的办法是使用PIL图像(或类似的东西)来绘制然后在画布小部件上绘制该图像,否则如果窗口被覆盖,则可能会丢失像素数据。
答案 7 :(得分:1)
您可以将Python 2.7或3.1(CPython)与ttk一起使用(在2.7,3.1的标准库中),ttk支持主题(看起来不错且编码非常简单)
(第1个屏幕是带有标签和语法高亮显示的文本编辑器) ttk screenshots