Как создать пользовательский компонент в JavaFX 8?

1

В Swing удалось создать пользовательские компоненты (только в коде), расширив JComponent (или JPanel), дайте ему макет, а затем добавьте компоненты вручную и выложите некоторые изобретенные геттеры и сеттеры для изменения набора элементов управления.

Однако я не могу найти, как это сделать в JavaFX 8? Я полагаю, что это должно быть возможно, но документация либо не продвигается вперед, либо приходит сразу с FXML, в котором я пока не заинтересован.

Если это помогает, это то, что я хочу в одном компоненте:

TextArea textArea = new TextArea();
TextField textField = new TextField();

BorderPane borderPane = new BorderPane();

textArea.setEditable(false);
borderPane.setCenter(textArea);

textField.addEventHandler(KeyEvent.KEY_RELEASED, keyEvent -> {
    if (keyEvent.getCode() == KeyCode.ENTER) {
        textArea.appendText(textField.getText() + System.lineSeparator());
        messages.offer(textField.getText());
        textField.clear();
    }
});
borderPane.setBottom(textField);
Теги:
javafx
javafx-8

1 ответ

0

Взгляните на это замечательное видео на Parleyys

Он показывает три варианта:

  • Просто используйте пользовательский CSS, если элемент управления уже существует, но просто нужно выглядеть по-разному
  • Расширение контейнера компоновки, например Region (Java-кодирование)
  • Extend Control (Java-кодирование) (полезно для создания библиотек)

Видео объясняет большую часть остальных. Удачи!

  • 0
    К вашему сведению, ссылка больше не работает.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню