12

我正在寻找用于 Windows 上的 Perl GUI 编程的工具,用于教育/内部开发,主要与科学相关。

我的第一选择是 PerlQt。我的一个朋友正在使用 Qt 和 C++ 进行开发,所以我希望能从他那里得到一些帮助。Qt 也有一个 GUI 创建器,Linux 与 Perl 有很好的集成。不幸的是,我未能使其在 Windows 上运行。我搜索了其他选项,搜索后仍然不清楚。这就是我到目前为止所得到的。

  • Perl/Tk:广泛的用户群、良好的文档、相对较低的学习曲线。但老样子,可能不活跃。然而,一些文章说它现在重新启动并且具有原生外观。
  • wxPerl:原生外观。但学习曲线陡峭。并非所有 wx 库都移植到 Perl。有些人喜欢它,有些人讨厌它。
  • Win32:GUI:原生外观,可以使用所有Windows API。需要强制安装,因为其中一项测试失败。仍然有效,但不确定它是否安装正确。
  • XUL::GUI:使用 FireFox 引擎,CSS 打字。

我可以设法安装它们并成功显示“你好,世界”。然而,我无法决定去哪一个,并且在线信息有时看起来相互矛盾。

你会在人类效率(易于阅读和编写代码)、计算效率和 GUI builder 的可用性方面比较这些工具吗?

4

6 回答 6

14

对于真正的跨平台 GUI 编程,我建议PrimaTk. 看起来都不是很好,但它们有效。

不过,我认为这些天使用 Web 前端比使用真正的 GUI 可能会更好地为您服务(呵呵);这很容易使用网络框架。我建议Mojolicious尽管其他人喜欢Dancer。我推荐 Mojo 而不是 Dancer 的主要原因是 Mojo 在一个小包中提供了许多功能。话又说回来,这就是其他人会推荐Dancer的原因,所以这是一个折腾。

最后一个考虑因素是 Mojo 带有开箱即用的 WebSockets。这让你的 webapp 很容易感觉更像一个真正的应用程序,与服务器对话并在不重新加载的情况下获得响应。

编辑:我现在有一个使用 Perl/Mojo 后端和 Web 前端编写的桌面应用程序的好例子:Azawawi 的Farabi. 它是一个文本编辑器,用于编写 Perl。它的 GUI 是浏览器,使它成为一个简单的跨平台编辑器。我推荐它作为类似任务的起点。

于 2012-09-19T15:22:54.330 回答
6

我的 perl 模块IUP的自我宣传:

  • 它使用本机小部件(= 您的应用程序将具有本机外观)
  • 它也略微跨平台(Win32、GTK、Motif)
于 2012-09-24T09:52:56.053 回答
2

以下是对小部件工具包的一个很好的概述——其中许多工具包为流行的编程语言提供了包装:

http://en.wikipedia.org/wiki/List_of_widget_toolkits

我推荐[wxwidgets][1]akawxwindows或基于浏览器的解决方案(例如 XULrunner)或纯基于 Javascript+HTML5 的解决方案。目前我正在开发一个只有基本控制台 UI 的跨平台工具,然后使用 websockets 和 HTML5 + SVG 来实现更复杂的 UI 呈现和 UX。为了使网络内容动态化,我使用了一个简单的模板引擎。

就个人而言,对于概述问题,我有很好的经验将术语wikipedialist of某处放在受信任的搜索引擎的搜索查询中。对勤奋的维基百科社区表示敬意。

于 2012-09-24T10:05:49.090 回答
2

我有使用 PerlTk 和 wxPerl 的经验。wxPerl 是我可以推荐的相当不错的工具包。还有一个 GUI builder 可用wxGlade

我在 Tk 中拥有的几个应用程序教会我全心全意地讨厌那个工具包:

  1. 看起来很糟糕
  2. 不成比例的编码时间花费在解决各种错误和寻找缺失功能的解决方法上
于 2012-09-19T18:15:46.733 回答
2

perlmonks 上有一个过时的Perl GUI 常见问题解答。

PerlQt密切跟踪 Qt。

于 2012-09-19T15:10:55.807 回答
1

Hta、HTML 应用程序、mshta.exe... 旧的但工作起来就像一个魅力。优点:基本上可以访问您开发内部可信应用程序所需的一切。缺点:几何变得乏味,perlscript(vs vbscript/javascript)文档/示例基本上不存在

于 2015-01-31T05:12:54.340 回答