使用Java和XUL进行UI开发

时间:2013-05-10 17:19:08

标签: java swing xul gui-builder

我有兴趣使用XUL作为定义我的Java应用程序(Swing和Web等)UI的标准方法。为此,我需要两个主要组件:

  • 一个开源GUI构建器,允许我拖动UI元素,如Abeille表单或Matisse等,并将这些UI导出为符合标准的XUL文件
  • 用于读取导出XUL文件并从中构建UI组件的Java库

我会想到这很容易找到,但是有很多问题:

  • 首先,我似乎无法找到XUL的“官方”XSD架构(即使是在Mozilla的站点之外),因此它似乎不是从中央架构普遍实施/验证的,因此,在各种XUL工具/产品中似乎存在许多相互矛盾的变化
    • 因此,获取一个可以导出XUL文件的工具,以及一个Java lib来读取该XUL文件而没有错误,似乎很难/不可能
  • 我发现的所有基于XUL的GUI构建器似乎都是专有且昂贵的
  • 可以读取XUL文件的唯一Java库似乎被称为“XUL工具包”,包括一个Web服务器,模板引擎等等。换句话说,它们对于我需要的东西来说太过分了,这是可以阅读的东西一个XUL文件并生成一个充满UI小部件的容器对象。

任何人都知道如何将这两个想法结合在一起并实现我的需要?提前谢谢!

3 个答案:

答案 0 :(得分:1)

我曾经探索过那个拥有许多工具包的大道。根据我的经验,这不值得,但为什么不再试一次呢?...

我需要以下内容:

  • CSS集成,如果可能,用于界定UI
  • 使用Rhino和/或其他JVM脚本语言编写脚本
  • XML标记支持和基本Swing集成(不是很重要)

我最终定制了一个现有的库。我不记得确切的名称,但我认为它是swingml的一个分支,可以更好地支持内联脚本。我改进了Rhino支持并且还勾选了一些Jython集成。

many other options,但没有什么是真正令人惊讶的。

我还尝试使用Apache Commons Jelly(早期Apache Maven版本背后的主库)。 Commons Jelly有一个Jelly Swing模块。

最后,我意识到除了开销(Java反射和动态方法调度,代理和与JVM脚本语言的交互 - >其他方面的范围等)之外,它既不方便又节省时间。

答案 1 :(得分:1)

几年前我已经开发了,目前正在刷新基于XUL的Java sourceforge项目,并集成名为javaXUL的脚本语言:https://sourceforge.net/projects/javaxul/

答案 2 :(得分:0)

检查http://www.zkoss.org/product/zk 我过去使用过zk这是一个基于XUL的好工具。它有社区版和许可版。 请检查这是否有帮助。谢谢