Как вручную изменить размер панели/прямоугольника в JavaFX с помощью перетаскивания мышью?

У меня есть стандартный объект панели JavaFX, который я хочу, чтобы пользователь мог растягивать или сжимать с любой из четырех сторон. Единственная проблема в том, что я не очень уверен, как это сделать.

У меня уже есть код, который изменяет размеры панели и объекта TextArea внутри нее до указанной ширины/высоты, но я хочу добавить прослушиватель MouseEvent или ActionEvent к краям панели, чтобы пользователь мог изменять размер. Текущий прослушиватель, который у меня есть для объекта Pane, позволяет пользователю перетаскивать его по экрану (чего я и хочу), но перетаскивание всего объекта не является проблемой; Мне также нужно иметь возможность изменять его размер.

mainPane.addEventFilter( MouseEvent.DRAG_DETECTED,
  new EventHandler<MouseEvent>() {
  @Override
  public void handle( MouseEvent event )
    {
       event.setDragDetect( true );
       dragDetected();
       event.consume();
    }

Я также должен упомянуть, что у меня есть объект JavaFX Rectangle, который служит основой для панели и соответствующей ему области TextArea. Если мне нужно опубликовать больше кода, пожалуйста, дайте мне знать. Спасибо!

РЕДАКТИРОВАТЬ: я, вероятно, должен упомянуть, что единственное, что изменяется в моем коде, - это Rectangle и TextArea; НЕ сама панель.


person TheProgrammer    schedule 23.05.2019    source источник
comment
Это может быть похоже .   -  person Sedrick    schedule 23.05.2019
comment
Опубликуйте минимально воспроизводимый пример..   -  person user1803551    schedule 24.05.2019