繁体   English   中英

从XML文件动态创建表单-JFrame Java Swing

[英]Dynamic form creation from XML file - JFrame Java Swing

我需要一个Java swing工具,它将基于XML文件动态构建表单,然后编写一个新的XML文件。 XML文件包含诸如字段类型和值之类的信息。

例如,该工具将读取XML,该XML定义了用于用户名,ID和登录的文本框。 表单显示此内容,并单击“保存”按钮时,它将把用户为每个字段输入的值保存到新的XML文件中。

它是一个非常简单的工具,我猜想那里可能已经有东西了。 有人知道类似的例子吗?

编辑:(添加XML文件的示例)

传入的XML文件为READ:

[XML]
  [PARAMS]
    [PARAM]
      [LABEL]Enter your user id:[/LABEL]
      [TYPE]textbox[/TYPE]
      [VALUE][/VALUE]
    [/PARAM]
    [PARAM]
      [LABEL]Enter the system id:[/LABEL]
      [TYPE]textbox[/TYPE]
      [VALUE][/VALUE]
    [/PARAM]
    [PARAM]
      [LABEL]Run all system checks?:[/LABEL]
      [TYPE]checkbox[/TYPE]
      [VALUE][/VALUE]
    [/PARAM]
  [/PARAMS]
[/XML]

然后,将基于用户选择生成示例输出XML文件。

[XML]
  [PARAMS]
    [PARAM]
      [LABEL]Enter your user id:[/LABEL]
      [TYPE]textbox[/TYPE]
      [VALUE]johndoe01[/VALUE]
    [/PARAM]
    [PARAM]
      [LABEL]Enter the system id:[/LABEL]
      [TYPE]textbox[/TYPE]
      [VALUE]system01[/VALUE]
    [/PARAM]
    [PARAM]
      [LABEL]Run all system checks?:[/LABEL]
      [TYPE]checkbox[/TYPE]
      [VALUE]true[/VALUE]
    [/PARAM]
  [/PARAMS]
[/XML]

同样,传入的XML可能具有多个参数/块。

这是我到目前为止所做的,但是仍然需要做一些修改,它使用的是纯逻辑。我没有包括我的xml解析器,但是我创建了可以读取并返回键和值对象的解析器。

Frame.xml
<ui_login>
    <ui_type>
        JFrame
    </ui_type>
    <ui_width>
    750
    </ui_width>
    <ui_height>
    150
    </ui_height>
    <ui_visible>
    true
    </ui_visible>
</ui_login>

CreateFrame.java
if (key.equals("ui_type")) {
   jFrame = new JFrame();
}
if (key.equals("ui_width")) {
    width = Integer.parseInt(value);
}
if (key.equals("ui_height")) {
    // height = screenSize.height;
   height = Integer.parseInt(value);
   jFrame.setSize(width, height);
}
if (key.equals("ui_visible")) {
    jFrame.setVisible(true);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM