JavaFX GridPane — перестановка или перемещение узлов в ячейках

У меня есть панель сетки 3X3. Мне нужно переместить узлы между ячейками или удалить некоторые узлы, скажем, в позиции x,y. При этом я хочу, чтобы оставшиеся узлы были соответствующим образом переставлены. Например, если я удалю первый узел, узел в ячейке 0,1 должен занимать 0,0 и так далее..

Я делаю это через DnD. Есть ли способ автоматически упорядочить узлы ячеек, а не использовать пользовательскую логику в событии перетаскивания?


person Saju    schedule 19.08.2014    source источник
comment
Будет ли использование TilePane работать лучше чем GridPane?   -  person James_D    schedule 19.08.2014
comment
@James_D Спасибо, что указали на TilePane. Я изменил свой код, используя это. Но мне нужен фиксированный макет столбца. Теперь в этом случае, после установки предпочтительного столбца на 3, количество столбцов увеличивается до 5. Невозможно уменьшить размер контейнера или увеличить размер узла. Есть ли способ исправить количество столбцов.   -  person Saju    schedule 20.08.2014
comment
Немного сложно. Вы можете попробовать связать prefTileWidth. Что-то вроде tilePane.prefTileWidthProperty().bind(tilePane.widthProperty().divide(3).subtract(1));   -  person James_D    schedule 20.08.2014
comment
Возможно, ButtonGridпоказано в stackoverflow.com/questions/36831753/ может вам помочь   -  person jns    schedule 14.05.2016