Как работать с размерами узлов JavaFX?

Я поражен, насколько примитивно, по-видимому, контролируются размеры узлов в JavaFX. У нас есть два тупых метода resize() и resizeRelocate() и все.

Где события, где наблюдаемые свойства и все эти прогрессивные штуки? Забыли? Добро пожаловать в Windows 3.1 API?

Мое впечатление ошибочно? Пожалуйста, исправьте меня.

Как привязать к границам узла? Как изменить размер одного узла и синхронно изменить размер другого? Как вставить один узел в другой? Как заставить внутренний узел увеличивать размер внешнего?

Как связать какое-то действие с изменением размера узла?


person Suzan Cioc    schedule 22.11.2013    source источник


Ответы (2)


Ознакомьтесь с этой демонстрацией, чтобы понять границы макета JavaFX. Это программа, которую я написал, когда впервые начал изучать JavaFX 2, чтобы найти ответы именно на те вопросы, которые вы задаете. Он был написан для ранней версии JavaFX 2, и часть кода была бы более элегантной с Java 8.

Просмотрите презентацию Эми Фаулер о макете JavaFX 2.

Написание хорошего ответа на этот вопрос займет некоторое время. Определенно, ваше впечатление ошибочно, ИМО. Если у меня будет время и не будет создано лучших ответов, я вернусь и отредактирую этот ответ, чтобы ответить на конкретные вопросы и исправить неправильные представления.

person jewelsea    schedule 22.11.2013

Проще говоря, вам нужно .addListener(new ChangeListener<T>().

person ajeh    schedule 25.11.2013