Есть ли эквивалент JavaFX Jgoodies FormLayout и DefaultFormBuilder?
В настоящее время я нахожусь в процессе миграции панели настроек приложения Swing в JavaFX. Приложение сначала считывает то, что должно быть построено из xml-файла. Затем приложение использует эту информацию для создания и добавления большого количества J-компонентов и связанных 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 с открытым исходным кодом, которые были сделано для этого? Если нет, я планирую использовать комбинацию штабелированные TitlePanes и hboxes для размещения различных элементов управления (компонентов).
вот макет (созданный с помощью JavaFX SceneBuilder) того, что я пытаюсь создать. Я еще не выровнял все идеально, но я хотел бы, чтобы все ярлыки были оправданы и занимали пространство самого длинного ярлыка. Все компоненты, которые нужно оставить, оправданы справа от меток (так же, как DefaultFormBuilder выкладывает вещи):
2 ответов
самое близкое к тому, что вы просите, что я видел, это FXForm2. Он генерирует форму на основе POJO со свойствами компонента JavaFX. Возможно, не самый элегантный или идеальный для того, что вы ищете, но может помочь вам на вашем пути.
хотя FXForm2 казалось бы, вариант, я в конечном итоге использовал управление листом свойств ControlsFX. Режим категории для листа свойств был почти точно тем, что я искал. Он включает в себя встроенную панель поиска, которую я нашел очень полезной.