Проверить, завершена ли QVariantAnimation?

У меня есть класс, полученный из QVariantAnimation и я должен запустить код после окончания анимации.

Я попробовал сигнал finished() пока нет, но эмиссии нет

connect(this, SIGNAL(finished()), this, SLOT(setEndVariables()));

Есть ли другое мнение, чтобы увидеть, остановлена ​​ли анимация, или неправильное использование сигнала?

Редактировать: с кодом

LiConfigurableFrameAnimation::LiConfigurableFrameAnimation(QString compId, int dur, LiConfigurableFrame *f)
{
if(dur>0)
this->setDuration(dur);
frame=f;
widget=frame->getComponent(compId);
isRectMode=false;
isImageMode=false;

connect(this, SIGNAL(finished()), this, SLOT(setEndVariables()));
}

Заголовочный файл:

class LiConfigurableFrameAnimation: public QVariantAnimation
{

private slots:
void setEndVariables();

};

1

Решение

Я решил проблему:

Я перегружаю функцию updateCurrentTime и проверяю, равно ли текущее время длительности.

updateCurrentTime(int curr)
{

if(curr >= this->duration())....
...
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]