Qt анимация цвета GroupBox

Рейтинг: 0Ответов: 0Опубликовано: 24.07.2023

Необходимо реализовать анимацию смены цвета QGroupBox. Вот пример кода от какого-то чела, но такой вариант, как и все другие, не работает. Так-же когда должна произойти анимация, выводится вот это: "QPropertyAnimation: you're trying to animate a non-existing property color of your QObject"

AnimatedBackground.h

#ifndef ANIMATEDBACKGROUND_H
#define ANIMATEDBACKGROUND_H

#include <QGroupBox>



сlass AnimatedBackground : public QGroupBox
{

  Q_OBJECT
  Q_PROPERTY(QColor color READ color WRITE setColor)

public:
  AnimatedBackground(QWidget *parent = nullptr)
  {
  }
  void setColor (QColor color){
    setStyleSheet(QString("background-color: rgb(%1, %2, %3);").arg(color.red()).arg(color.green()).arg(color.blue()));
  }
  QColor color(){
    return Qt::black;
  }
};

#endif // ANIMATEDBACKGROUND_H

mainwindow.cpp

QPropertyAnimation *animation2 = new QPropertyAnimation(ui->groupBox, "color");
    animation2->setDuration(2000);
    animation2->setStartValue(QColor(0, 0, 0));
    animation2->setEndValue(QColor(240, 240, 240));

QSequentialAnimationGroup *group=new QSequentialAnimationGroup();
    group->addAnimation(animation2);
    group->start();

Ответы

Ответов пока нет.