Можно ли автоматически изменить размер панели, если узел находится за ее пределами в javafx?

1

Я хотел бы знать, возможно ли автоматическое изменение размера панели после добавления узла, который находится за пределами границ панели, так что все дочерние элементы панели видны на сцене. Например, узел с отрицательной x-координатой, такой как x = -100, y = 200. Я пробовал исследовать, как это сделать, но все было в жиле. Благодарю.

  • 0
    Вы хотите изменить размер фрейма так, чтобы x=-100 стал x=0 ? (который будет перемещать кадр на 100 пикселей влево, а затем добавлять 100 к ширине кадра, чтобы сохранить его правую сторону на месте) Это довольно странная вещь. Подумайте, почему вы хотите сделать что-то подобное?
  • 0
    Причина, по которой я хотел бы это сделать, заключается в том, что мне нужно иметь возможность отображать всю форму / многоугольник на панели независимо от ее координат. По сути, позволяют панели автоматически изменять размеры всякий раз, когда добавляются узлы, которые находятся за пределами видимой области.
Теги:
javafx
clipping
autoresize

1 ответ

0

Перейдя через всех своих детей и вычислив общие границы в родительском, переместите детей так, чтобы верхняя/левая позиция была равна 0/0, вычислите масштабный коэффициент в зависимости от общих границ и вида, а затем примените setScaleX и setScaleY.

Ещё вопросы

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