15

我想从 XSD 文件创建 GUI 组件。生成的 GUI 应用于相应模式的具体 xml 实例,并将数据绑定到“有趣的”元素或属性内容。我考虑了这些解决方案:

  1. 贾克斯前线。(商业工具)。这不会生成源代码。这对我来说很重要,因为我希望生成的 GUI 和 GUI 的其他组件之间进行通信。

  2. 使用 xsd2emf 并尝试从中生成一个编辑器。生成的模型很复杂,生成的编辑器也很复杂,而且有问题。

  3. 自己做,例如从 xsd 生成一个 xml,将 xml 加载为 dom,选择有趣的部分并使用http://www.vogella.de/eclipse.html中描述的一种方法生成数据绑定。

有没有人有其他想法或已经成功解决了这个问题?我更喜欢生成 SWT GUI 的免费开源解决方案。

4

1 回答 1

2

你看过 Eclipse 的Sapphire框架吗?

使用它,您必须基于一些简单的 java 接口文件创建一个模型,并带有一些可以模拟您的 XSD 的注释。然后,一旦您定义了模型,您就可以使用单个 xml 文件(sdef 文件)创建 SWT GUI,该文件将各种属性编辑器连接到您的模型。属性编辑器可以是简单的小部件,如标签、文本、列表、组合框,但也可以是复杂的编辑器,如基于 GEF 的图表编辑器。所以基本上,如果您有一些描述模型的界面,那么可以有一个图形编辑器来编辑该模型中少于 100 行 XML 的节点。

请参阅此示例文件的第 22 到 121 行

于 2012-03-16T06:41:59.037 回答