本文整理汇总了C++中QPropertyAnimation::setLoopCount方法的典型用法代码示例。如果您正苦于以下问题:C++ QPropertyAnimation::setLoopCount方法的具体用法?C++ QPropertyAnimation::setLoopCount怎么用?C++ QPropertyAnimation::setLoopCount使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QPropertyAnimation
的用法示例。
在下文中一共展示了QPropertyAnimation::setLoopCount方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: QGLView
CubeView::CubeView(QWidget *parent)
: QGLView(parent)
, fbo(0)
, tangle(0.0f)
, cangle(0.0f)
, oangle(0.0f)
, needsUpdate(true)
{
innerCamera = new QGLCamera(this);
QPropertyAnimation *animation;
animation = new QPropertyAnimation(this, "teapotAngle", this);
animation->setStartValue(0.0f);
animation->setEndValue(360.0f);
animation->setDuration(1000);
animation->setLoopCount(-1);
animation->start();
animation = new QPropertyAnimation(this, "cubeAngle", this);
animation->setStartValue(0.0f);
animation->setEndValue(360.0f);
animation->setDuration(5000);
animation->setLoopCount(-1);
animation->start();
animation = new QPropertyAnimation(this, "orbitAngle", this);
animation->setStartValue(0.0f);
animation->setEndValue(360.0f);
animation->setDuration(5000);
animation->setLoopCount(-1);
animation->start();
}
示例2: QGraphicsProxyWidget
QAbstractAnimation *QSanRoomSkin::createHuaShenAnimation(QPixmap &huashenAvatar, QPoint topLeft, QGraphicsItem *parent,
QGraphicsItem *&huashenAvatarCreated) const
{
QLabel *avatar = new QLabel;
avatar->setStyleSheet("QLabel { background-color: transparent; }");
avatar->setPixmap(huashenAvatar);
QGraphicsProxyWidget *widget = new QGraphicsProxyWidget(parent);
widget->setWidget(avatar);
widget->setPos(topLeft);
QPropertyAnimation *animation = new QPropertyAnimation(widget, "opacity");
animation->setLoopCount(2000);
JsonArray huashenConfig = _m_animationConfig["huashen"].value<JsonArray>();
int duration;
if (tryParse(huashenConfig[0], duration) && huashenConfig[1].canConvert<JsonArray>()) {
animation->setDuration(duration);
JsonArray keyValues = huashenConfig[1].value<JsonArray>();
for (int i = 0; i < keyValues.size(); i++) {
QVariant keyValue = keyValues[i];
if (!keyValue.canConvert<JsonArray>() || keyValue.value<JsonArray>().length() != 2) continue;
double step;
double val;
JsonArray keyArr = keyValue.value<JsonArray>();
if (!tryParse(keyArr[0], step) || !tryParse(keyArr[1], val)) continue;
animation->setKeyValueAt(step, val);
}
}
huashenAvatarCreated = widget;
return animation;
}
示例3: setTabHighlighted
void TabBar::setTabHighlighted(int index)
{
const QByteArray propertyName = highlightPropertyName(index);
const QColor highlightColor = KColorScheme(QPalette::Active, KColorScheme::Window).foreground(KColorScheme::PositiveText).color();
if (tabTextColor(index) != highlightColor)
{
if (ReKonfig::animatedTabHighlighting())
{
m_tabHighlightEffect->setEnabled(true);
m_tabHighlightEffect->setProperty(propertyName, qreal(0.9));
QPropertyAnimation *anim = new QPropertyAnimation(m_tabHighlightEffect, propertyName);
m_highlightAnimation.insert(propertyName, anim);
//setup the animation
anim->setStartValue(0.9);
anim->setEndValue(0.0);
anim->setDuration(500);
anim->setLoopCount(2);
anim->start(QAbstractAnimation::DeleteWhenStopped);
m_animationMapper->setMapping(anim, index);
connect(anim, SIGNAL(finished()), m_animationMapper, SLOT(map()));
}
setTabTextColor(index, highlightColor);
}
}
示例4: addRotateTransform
void MainWindow::addRotateTransform(MySimpleTextItem *item)
{
QPropertyAnimation* anRotation = new QPropertyAnimation(item, "rotation");
anRotation->setStartValue(0.0);
anRotation->setEndValue(360.0);
int ms = rand()%4000 + 1000;
anRotation->setDuration(ms);
anRotation->setEasingCurve(QEasingCurve::InBounce);
anRotation->setLoopCount(5);
_group.addAnimation(anRotation);
}
示例5: addScaleTransform
void MainWindow::addScaleTransform(MySimpleTextItem *item)
{
QPropertyAnimation* anScale = new QPropertyAnimation(item, "scale");
anScale->setStartValue(7.0);
int r = rand()%16 + 7;
anScale->setEndValue(r);
int ms = rand()%4000 + 1000;
anScale->setDuration(ms);
anScale->setEasingCurve(QEasingCurve::CosineCurve);
anScale->setLoopCount(5);
_group.addAnimation(anScale);
}
示例6: BezierManeuverAnimation
QPropertyAnimation * BezierManeuverSegment::animation()
{
//std::cout << "Bezier creating animation ..."
// << std::endl;
QPropertyAnimation * animation =
new BezierManeuverAnimation(start, key1, key2, end);
Q_CHECK_PTR(animation);
animation->setEasingCurve(QEasingCurve::Linear);
animation->setLoopCount(1);
animation->setDuration(5000);
//std::cout << "Bezier returning animation ..."
// << std::endl;
return animation;
}
示例7: addTranslateTransform
void MainWindow::addTranslateTransform(MySimpleTextItem *item)
{
int w = (int)_scene.width();
int h = (int)_scene.height();
QPropertyAnimation* anX = new QPropertyAnimation(item, "x");
anX->setStartValue(item->x());
qreal endW = rand()%w;
anX->setEndValue(endW);
int ms = rand()%4000 + 1000;
anX->setDuration(ms);
anX->setEasingCurve(QEasingCurve::InBack);
anX->setLoopCount(5);
_group.addAnimation(anX);
QPropertyAnimation* anY = new QPropertyAnimation(item, "rotation");
anY->setStartValue(item->y());
qreal endH = rand()%h;
anY->setEndValue(endH);
ms = rand()%4000 + 1000;
anY->setDuration(ms);
anY->setEasingCurve(QEasingCurve::BezierSpline);
anY->setLoopCount(5);
_group.addAnimation(anY);
}
示例8: QPropertyAnimation
void View3D::startModelRotationRecursive(QObject* pObject)
{
//TODO this won't work with QEntities
if(Renderable3DEntity* pItem = dynamic_cast<Renderable3DEntity*>(pObject)) {
QPropertyAnimation *anim = new QPropertyAnimation(pItem, QByteArrayLiteral("rotZ"));
anim->setDuration(30000);
anim->setStartValue(QVariant::fromValue(pItem->rotZ()));
anim->setEndValue(QVariant::fromValue(pItem->rotZ() + 360.0f));
anim->setLoopCount(-1);
anim->start();
m_lPropertyAnimations << anim;
}
for(int i = 0; i < pObject->children().size(); ++i) {
startModelRotationRecursive(pObject->children().at(i));
}
}
示例9: onBlinkClick
void DeviceView::onBlinkClick(){
_blinking = true;
_blinkBtn->setDisabled(true);
_dev->blink();
_colorizeEffect = new QGraphicsColorizeEffect();
_colorizeEffect->setColor(Qt::yellow);
_colorisation = 0;
_colorizeEffect->setStrength(_colorisation);
setGraphicsEffect(_colorizeEffect);
QPropertyAnimation *animation = new QPropertyAnimation(this, "colorisation");
animation->setDuration(200);
animation->setLoopCount(10);
animation->setStartValue(0.0);
animation->setEndValue(0.5);
animation->setEasingCurve(QEasingCurve::CosineCurve);
animation->start();
QTimer::singleShot(2100, this, SLOT(onBlinkingFinished()));
}
示例10: QLabel
LrcView::LrcView(QWidget *parent) :
QLabel(parent)
{
////////////// setGeometry(276, 113, 731, 476);
//创建 动画
lab_left_top = new QLabel(this);
lab_left_bottom = new QLabel(this);
lab_left_top ->setGeometry(20, 40, 100, 100);
lab_left_bottom ->setGeometry(20, 100, 240, 320);
QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(updateGif()));
timer ->start(100);
//创建 后续歌词
textNext = new QLabel(this);
textNext ->setGeometry(260, 260, 450, 200);
textNext ->setAlignment(Qt::AlignTop);
textNext ->setStyleSheet(
"QLabel{"
// "color: rgba(40, 16, 144, 255);"
// "color: rgba(92, 133, 20, 255);"
// "color: rgba(95, 110, 13, 255);" //黄绿色
"color: rgba(38, 79, 16, 255);" //墨绿色
// "color: rgba(13, 72, 110, 255);" //蓝绿色
"font-family: 楷体;"
"font-size: 20px;"
"}"
);
//创建 当前播放歌词
currentLrc = new CurrentLrc(this);
currentLrc ->setGeometry(260, 232, 450, 26);
//创建 播放过的歌词
textPrevious = new QLabel(this);
textPrevious ->setGeometry(260, 6, 450, 225);
textPrevious ->setAlignment(Qt::AlignBottom);
textPrevious ->setStyleSheet(
"QLabel{"
"color: rgba(38, 79, 16, 255);"
"font-family: 楷体;"
"font-size: 20px;"
"}"
);
this->setMouseTracking(true);
textNext->setMouseTracking(true);
currentLrc->setMouseTracking(true);
textPrevious->setMouseTracking(true);
lab_left_top->setMouseTracking(true);
lab_left_bottom->setMouseTracking(true);
/*
QAxWidget *flash = new QAxWidget(this);
flash->setControl(QString::fromUtf8("{d27cdb6e-ae6d-11cf-96b8-444553540000}"));
QString name=qApp->applicationDirPath();
flash->dynamicCall("LoadMovie(long,string)",0,qApp->applicationDirPath()+"/top.swf");
flash->show();
QGridLayout *layout = new QGridLayout;
layout->addWidget(flash);
layout->setMargin(0);
setLayout(layout);
*/
/*
QPropertyAnimation *animation = new QPropertyAnimation(lab_left_bottom, "pos");
animation->setKeyValueAt(0.0, QPoint(lab_left_bottom->x(), lab_left_bottom->y()));
animation->setKeyValueAt(0.5, QPoint(this->x()-lab_left_bottom->width(), lab_left_bottom->y()));
animation->setKeyValueAt(1.0, QPoint(lab_left_bottom->x(), lab_left_bottom->y()));
animation->setDuration(20000);
animation->setLoopCount(-1);
animation->start();
*/
QPropertyAnimation *animation = new QPropertyAnimation(lab_left_bottom, "geometry");
animation->setKeyValueAt(0.0, QRectF(lab_left_bottom->pos(), lab_left_bottom->size()));
animation->setKeyValueAt(0.5, QRectF(lab_left_bottom->x()+50, lab_left_bottom->y()+50, lab_left_bottom->width()-100, lab_left_bottom->height()-133));
animation->setKeyValueAt(1.0, QRectF(lab_left_bottom->pos(), lab_left_bottom->size()));
animation->setDuration(20000);
animation->setLoopCount(-1);
animation->start();
}
示例11: main
int main(int argc, char* argv[])
{
QGuiApplication app(argc, argv);
Qt3D::QWindow view;
Qt3D::QInputAspect *input = new Qt3D::QInputAspect;
view.registerAspect(input);
// Root entity
Qt3D::QEntity *rootEntity = new Qt3D::QEntity();
// Camera
Qt3D::QCamera *cameraEntity = view.defaultCamera();
cameraEntity->lens()->setPerspectiveProjection(45.0f, 16.0f/9.0f, 0.1f, 1000.0f);
cameraEntity->setPosition(QVector3D(0, 0, -40.0f));
cameraEntity->setUpVector(QVector3D(0, 1, 0));
cameraEntity->setViewCenter(QVector3D(0, 0, 0));
input->setCamera(cameraEntity);
// Material
Qt3D::QMaterial *material = new Qt3D::QPhongMaterial(rootEntity);
// Torus
Qt3D::QEntity *torusEntity = new Qt3D::QEntity(rootEntity);
Qt3D::QTorusMesh *torusMesh = new Qt3D::QTorusMesh;
torusMesh->setRadius(5);
torusMesh->setMinorRadius(1);
torusMesh->setRings(100);
torusMesh->setSlices(20);
Qt3D::QTransform *torusTransform = new Qt3D::QTransform;
Qt3D::QScaleTransform *torusScaleTransform = new Qt3D::QScaleTransform;
torusScaleTransform->setScale3D(QVector3D(1.5, 1, 0.5));
Qt3D::QRotateTransform *torusRotateTransform = new Qt3D::QRotateTransform;
torusRotateTransform->setAxis(QVector3D(1, 0, 0));
torusRotateTransform->setAngleDeg(45);
torusTransform->addTransform(torusScaleTransform);
torusTransform->addTransform(torusRotateTransform);
torusEntity->addComponent(torusMesh);
torusEntity->addComponent(torusTransform);
torusEntity->addComponent(material);
// Sphere
Qt3D::QEntity *sphereEntity = new Qt3D::QEntity(rootEntity);
Qt3D::QSphereMesh *sphereMesh = new Qt3D::QSphereMesh;
sphereMesh->setRadius(3);
Qt3D::QTransform *sphereTransform = new Qt3D::QTransform;
Qt3D::QTranslateTransform *sphereTranslateTransform = new Qt3D::QTranslateTransform;
sphereTranslateTransform->setTranslation(QVector3D(20, 0, 0));
Qt3D::QRotateTransform *sphereRotateTransform = new Qt3D::QRotateTransform;
QPropertyAnimation *sphereRotateTransformAnimation = new QPropertyAnimation(sphereRotateTransform);
sphereRotateTransformAnimation->setTargetObject(sphereRotateTransform);
sphereRotateTransformAnimation->setPropertyName("angle");
sphereRotateTransformAnimation->setStartValue(QVariant::fromValue(0));
sphereRotateTransformAnimation->setEndValue(QVariant::fromValue(360));
sphereRotateTransformAnimation->setDuration(10000);
sphereRotateTransformAnimation->setLoopCount(-1);
sphereRotateTransformAnimation->start();
sphereRotateTransform->setAxis(QVector3D(0, 1, 0));
sphereRotateTransform->setAngleDeg(0);
sphereTransform->addTransform(sphereTranslateTransform);
sphereTransform->addTransform(sphereRotateTransform);
sphereEntity->addComponent(sphereMesh);
sphereEntity->addComponent(sphereTransform);
sphereEntity->addComponent(material);
view.setRootEntity(rootEntity);
view.show();
return app.exec();
}