У меня есть QWidget, который содержит различные другие виджеты. Я хочу анимировать его, появляющийся на экране, постепенно открывая его сверху вниз, увеличивая его высоту с 0 до того, каким будет его естественная высота.
То, как у меня это сейчас получается:
mAnimation = new QPropertyAnimation(this, "maximumHeight");
mAnimation->setStartValue(0);
mAnimation->setEndValue(400);
mAnimation->start();
У этого есть две проблемы:
- Вылетает, когда высота достигает определенной высоты, с ошибкой «qDrawShadeRect: Неверные параметры».
- Если я изменяю 0 на 100, он работает нормально, но виджеты, содержащиеся в анимируемом мною QWidget, меняют свой макет по мере анимации виджета, начиная очень сжато и постепенно расширяясь, по мере того, как они получают больше места. Это выглядит некрасиво!
У кого-нибудь есть предложения?