是否有JFoodies FormLayout和DefaultFormBuilder的JavaFX等价物?

时间:2014-03-28 15:53:32

标签: java forms swing layout javafx

目前,我正在将Swing应用程序的首选项面板迁移到JavaFX。应用程序首先读取需要从xml文件构建的内容。然后,应用程序使用该信息创建大量JComponents和关联的JLabel并将其附加到面板以及一些分隔符,如下所示:

layout = new FormLayout(description, "");
builder = new DefaultFormBuilder(bottomLayout);

// In some loop
propertyControlImpl.layout(builder);

public void layout(final DefaultFormBuilder builder) {
    final JLabel label = builder.append(TextUtils.getOptionalText(getLabel()), component);
    // set the text property of label, etc
}

public void layout(final DefaultFormBuilder builder) {
    builder.appendSeparator(TextUtils.getOptionalText(getLabel()));
}

将此转换为JavaFX的最佳方法是什么?是否有为此制作的开源JavaFX库?如果没有,我计划使用stacked TitlePanes和hbox的组合来放置各种控件(组件)。

这是我想要生成的模拟(使用JavaFX SceneBuilder创建)。我尚未完美地对齐所有内容,但我希望所有标签都正确对齐并占据最长标签的空间。所有要在标签右侧左对齐的组件(就像DefaultFormBuilder如何布置一样):

Mock

2 个答案:

答案 0 :(得分:4)

我所见到的最接近你要求的是FXForm2。它基于具有JavaFX Bean属性的POJO生成表单。也许不是最优雅或最完美的你想要的东西,但可能会帮助你。

答案 1 :(得分:1)

虽然FXForm2似乎是一种选择,但我最终使用了ControlsFX's Property Sheet control。属性表的CATEGORY模式几乎就是我想要的。它包括一个内置的搜索栏,我发现它非常有用。