Следуя инструкциям в этой документации об анимациях и переходах, следует отметить, что для анимации, выполненной на уровне Form
, требуется принять область содержимого в качестве фактического Container
.Поэтому вместо
form.animateLayout(1000);
нужно сделать
form.getContentPane().animateLayout(1000);
Хотя в документации указывается на это исключение, не будет ли проще и удобнее обновить функцию animateLayout()
допроверить, является ли предполагаемый Компонент, для которого выполняется анимация, самой формой, и, если это так, автоматически получает панель содержимого?
Это уберет обработку этого исключения со стороны пользователя и сделает его более интуитивным.