Изменение размера окна с помощью QPropertyAnimation

У меня есть следующая проблема: я хочу изменить размер окна с помощью QPropertyAnimation, чтобы выглядеть красиво, но окно также мгновенно перемещается во время изменения размера, в то время как я не хочу, я просто хочу изменить размер окна и не изменять его значение позиции.

Итак, вот мой код:

animation = new QPropertyAnimation(this, "geometry");
animation->setDuration(150);
animation->setStartValue(QRect(preferences::x(), preferences::y(), width, window_height_min));
animation->setEndValue(QRect(preferences::x(), preferences::y(), width, window_height_min+expand_general_to));
animation->start();

где width и window_height_min и expand_general_to-мои собственные переменные, которые обрабатывают объем изменения размера, который необходимо сделать. НО, preferences::x() и preferences::y() действительно обрабатывают положение моего окна, так почему же оно движется, в то время как prefereces:: x() будет одинаковым оба раза? (в начале и в конце значения) ?

заранее спасибо за любые ответы!

1 ответов


пожалуйста, попробуйте установить свойство size.

animation = new QPropertyAnimation(this, "size");
animation->setDuration(150);
animation->setStartValue(QSize(width, window_height_min));
animation->setEndValue(QSize(width, window_height_min+expand_general_to));
animation->start();