1

我对使用 XUL 作为定义我的 Java 应用程序(Swing 和 Web 类似)UI 的标准方式很感兴趣。为此,我需要两个主要组件:

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

我原以为这很容易找到,但是有很多问题:

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

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

4

3 回答 3

1

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

我需要以下内容:

  • CSS 集成,如果可能的话,为 UI 设置皮肤
  • 使用 Rhino 和/或其他 JVM 脚本语言编写脚本
  • XML 标记支持和基本的 Swing 集成(不是很重要)

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

还有很多其他的选择,但没有什么是真正令人惊讶的。

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

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

于 2013-05-10T21:44:52.017 回答
1

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

于 2020-05-14T10:47:05.300 回答
0

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

于 2013-05-10T18:13:36.420 回答