目前我正在将 Swing 应用程序的首选项面板迁移到 JavaFX。应用程序首先读取需要从 xml 文件构建的内容。然后应用程序使用该信息创建大量 JComponents 和关联的 JLabels 并将其附加到面板以及一些分隔符,如下所示:
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 的组合和 hboxes 来放置各种控件(组件)。
这是我尝试生成的模拟(使用 JavaFX SceneBuilder 创建)。我还没有完全对齐所有内容,但我想让所有标签都对齐并占用最长标签的空间。所有要在标签右侧对齐的组件(就像 DefaultFormBuilder 的布局方式一样):
最佳答案
我所看到的与您的要求最接近的是 FXForm2 .它基于具有 JavaFX Bean 属性的 POJO 生成表单。也许不是最优雅或最完美的您正在寻找的东西,但可能会帮助您。
关于java - 是否有 JGoodies FormLayout 和 DefaultFormBuilder 的 JavaFX 等价物?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22717583/