<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <!-- qanimationgroup.cpp --> <title>QAnimationGroup Class | Qt Core 5.12.6</title> <link rel="stylesheet" type="text/css" href="style/offline-simple.css" /> <script type="text/javascript"> document.getElementsByTagName("link").item(0).setAttribute("href", "style/offline.css"); // loading style sheet breaks anchors that were jumped to before // so force jumping to anchor again setTimeout(function() { var anchor = location.hash; // need to jump to different anchor first (e.g. none) location.hash = "#"; setTimeout(function() { location.hash = anchor; }, 0); }, 0); </script> </head> <body> <div class="header" id="qtdocheader"> <div class="main"> <div class="main-rounded"> <div class="navigationbar"> <table><tr> <td >Qt 5.12</td><td ><a href="qtcore-index.html">Qt Core</a></td><td ><a href="qtcore-module.html">C++ Classes</a></td><td >QAnimationGroup</td></tr></table><table class="buildversion"><tr> <td id="buildversion" width="100%" align="right"><a href="qtcore-index.html">Qt 5.12.6 Reference Documentation</a></td> </tr></table> </div> </div> <div class="content"> <div class="line"> <div class="content mainContent"> <div class="sidebar"> <div class="toc"> <h3><a name="toc">Contents</a></h3> <ul> <li class="level1"><a href="#public-functions">Public Functions</a></li> <li class="level1"><a href="#static-public-members">Static Public Members</a></li> <li class="level1"><a href="#reimplemented-protected-functions">Reimplemented Protected Functions</a></li> <li class="level1"><a href="#details">Detailed Description</a></li> </ul> </div> <div class="sidebar-content" id="sidebar-content"></div></div> <h1 class="title">QAnimationGroup Class</h1> <!-- $$$QAnimationGroup-brief --> <p>The <a href="qanimationgroup.html">QAnimationGroup</a> class is an abstract base class for groups of animations. <a href="#details">More...</a></p> <!-- @@@QAnimationGroup --> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> Header:</td><td class="memItemRight bottomAlign"> <span class="preprocessor">#include <QAnimationGroup></span> </td></tr><tr><td class="memItemLeft rightAlign topAlign"> qmake:</td><td class="memItemRight bottomAlign"> QT += core</td></tr><tr><td class="memItemLeft rightAlign topAlign"> Since:</td><td class="memItemRight bottomAlign"> Qt 4.6</td></tr><tr><td class="memItemLeft rightAlign topAlign"> Inherits:</td><td class="memItemRight bottomAlign"> <a href="qabstractanimation.html">QAbstractAnimation</a></td></tr><tr><td class="memItemLeft rightAlign topAlign"> Inherited By:</td><td class="memItemRight bottomAlign"> <p><a href="qparallelanimationgroup.html">QParallelAnimationGroup</a> and <a href="qsequentialanimationgroup.html">QSequentialAnimationGroup</a></p> </td></tr></table></div><ul> <li><a href="qanimationgroup-members.html">List of all members, including inherited members</a></li> <li><a href="qanimationgroup-obsolete.html">Obsolete members</a></li> </ul> <a name="public-functions"></a> <h2 id="public-functions">Public Functions</h2> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> </td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#QAnimationGroup">QAnimationGroup</a></b>(QObject *<i>parent</i> = nullptr)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> virtual </td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#dtor.QAnimationGroup">~QAnimationGroup</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#addAnimation">addAnimation</a></b>(QAbstractAnimation *<i>animation</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QAbstractAnimation *</td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#animationAt">animationAt</a></b>(int <i>index</i>) const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#animationCount">animationCount</a></b>() const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#clear">clear</a></b>()</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> int </td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#indexOfAnimation">indexOfAnimation</a></b>(QAbstractAnimation *<i>animation</i>) const</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#insertAnimation">insertAnimation</a></b>(int <i>index</i>, QAbstractAnimation *<i>animation</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> void </td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#removeAnimation">removeAnimation</a></b>(QAbstractAnimation *<i>animation</i>)</td></tr> <tr><td class="memItemLeft rightAlign topAlign"> QAbstractAnimation *</td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#takeAnimation">takeAnimation</a></b>(int <i>index</i>)</td></tr> </table></div> <ul> <li class="fn">11 public functions inherited from <a href="qabstractanimation.html#public-functions">QAbstractAnimation</a></li> <li class="fn">32 public functions inherited from <a href="qobject.html#public-functions">QObject</a></li> </ul> <a name="static-public-members"></a> <h2 id="static-public-members">Static Public Members</h2> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> const QMetaObject </td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#staticMetaObject-var">staticMetaObject</a></b></td></tr> </table></div> <ul> <li class="fn">10 static public members inherited from <a href="qobject.html#static-public-members">QObject</a></li> </ul> <a name="reimplemented-protected-functions"></a> <h2 id="reimplemented-protected-functions">Reimplemented Protected Functions</h2> <div class="table"><table class="alignedsummary"> <tr><td class="memItemLeft rightAlign topAlign"> virtual bool </td><td class="memItemRight bottomAlign"><b><a href="qanimationgroup.html#event">event</a></b>(QEvent *<i>event</i>) override</td></tr> </table></div> <ul> <li class="fn">4 protected functions inherited from <a href="qabstractanimation.html#protected-functions">QAbstractAnimation</a></li> <li class="fn">9 protected functions inherited from <a href="qobject.html#protected-functions">QObject</a></li> </ul> <h3>Additional Inherited Members</h3> <ul> <li class="fn">6 properties inherited from <a href="qabstractanimation.html#properties">QAbstractAnimation</a></li> <li class="fn">1 property inherited from <a href="qobject.html#properties">QObject</a></li> <li class="fn">6 public slots inherited from <a href="qabstractanimation.html#public-slots">QAbstractAnimation</a></li> <li class="fn">1 public slot inherited from <a href="qobject.html#public-slots">QObject</a></li> <li class="fn">4 signals inherited from <a href="qabstractanimation.html#signals">QAbstractAnimation</a></li> <li class="fn">2 signals inherited from <a href="qobject.html#signals">QObject</a></li> <li class="fn">4 protected functions inherited from <a href="qabstractanimation.html#protected-functions">QAbstractAnimation</a></li> <li class="fn">9 protected functions inherited from <a href="qobject.html#protected-functions">QObject</a></li> </ul> <a name="details"></a> <!-- $$$QAnimationGroup-description --> <div class="descr"> <h2 id="details">Detailed Description</h2> <p>The <a href="qanimationgroup.html">QAnimationGroup</a> class is an abstract base class for groups of animations.</p> <p>An animation group is a container for animations (subclasses of <a href="qabstractanimation.html">QAbstractAnimation</a>). A group is usually responsible for managing the <a href="qabstractanimation.html#State-enum">state</a> of its animations, i.e., it decides when to start, stop, resume, and pause them. Currently, Qt provides two such groups: <a href="qparallelanimationgroup.html">QParallelAnimationGroup</a> and <a href="qsequentialanimationgroup.html">QSequentialAnimationGroup</a>. Look up their class descriptions for details.</p> <p>Since <a href="qanimationgroup.html">QAnimationGroup</a> inherits from <a href="qabstractanimation.html">QAbstractAnimation</a>, you can combine groups, and easily construct complex animation graphs. You can query <a href="qabstractanimation.html">QAbstractAnimation</a> for the group it belongs to (using the <a href="qabstractanimation.html#group">group()</a> function).</p> <p>To start a top-level animation group, you simply use the <a href="qabstractanimation.html#start">start()</a> function from <a href="qabstractanimation.html">QAbstractAnimation</a>. By a top-level animation group, we think of a group that itself is not contained within another group. Starting sub groups directly is not supported, and may lead to unexpected behavior.</p> <p><a href="qanimationgroup.html">QAnimationGroup</a> provides methods for adding and retrieving animations. Besides that, you can remove animations by calling <a href="qanimationgroup.html#removeAnimation">removeAnimation</a>(), and clear the animation group by calling <a href="qanimationgroup.html#clear">clear</a>(). You may keep track of changes in the group's animations by listening to <a href="qevent.html#Type-enum">QEvent::ChildAdded</a> and <a href="qevent.html#Type-enum">QEvent::ChildRemoved</a> events.</p> <p><a href="qanimationgroup.html">QAnimationGroup</a> takes ownership of the animations it manages, and ensures that they are deleted when the animation group is deleted.</p> </div> <p><b>See also </b><a href="qabstractanimation.html">QAbstractAnimation</a>, <a href="qvariantanimation.html">QVariantAnimation</a>, and <a href="animation-overview.html">The Animation Framework</a>.</p> <!-- @@@QAnimationGroup --> <div class="func"> <h2>Member Function Documentation</h2> <!-- $$$QAnimationGroup[overload1]$$$QAnimationGroupQObject* --> <h3 class="fn" id="QAnimationGroup"><a name="QAnimationGroup"></a>QAnimationGroup::<span class="name">QAnimationGroup</span>(<span class="type"><a href="qobject.html#QObject">QObject</a></span> *<i>parent</i> = nullptr)</h3> <p>Constructs a <a href="qanimationgroup.html">QAnimationGroup</a>. <i>parent</i> is passed to <a href="qobject.html">QObject</a>'s constructor.</p> <!-- @@@QAnimationGroup --> <!-- $$$~QAnimationGroup[overload1]$$$~QAnimationGroup --> <h3 class="fn" id="dtor.QAnimationGroup"><a name="dtor.QAnimationGroup"></a><code>[virtual] </code>QAnimationGroup::<span class="name">~QAnimationGroup</span>()</h3> <p>Destroys the animation group. It will also destroy all its animations.</p> <!-- @@@~QAnimationGroup --> <!-- $$$addAnimation[overload1]$$$addAnimationQAbstractAnimation* --> <h3 class="fn" id="addAnimation"><a name="addAnimation"></a><span class="type">void</span> QAnimationGroup::<span class="name">addAnimation</span>(<span class="type"><a href="qabstractanimation.html#QAbstractAnimation">QAbstractAnimation</a></span> *<i>animation</i>)</h3> <p>Adds <i>animation</i> to this group. This will call <a href="qanimationgroup.html#insertAnimation">insertAnimation</a> with index equals to <a href="qanimationgroup.html#animationCount">animationCount</a>().</p> <p><b>Note: </b>The group takes ownership of the animation.</p><p><b>See also </b><a href="qanimationgroup.html#removeAnimation">removeAnimation</a>().</p> <!-- @@@addAnimation --> <!-- $$$animationAt[overload1]$$$animationAtint --> <h3 class="fn" id="animationAt"><a name="animationAt"></a><span class="type"><a href="qabstractanimation.html#QAbstractAnimation">QAbstractAnimation</a></span> *QAnimationGroup::<span class="name">animationAt</span>(<span class="type">int</span> <i>index</i>) const</h3> <p>Returns a pointer to the animation at <i>index</i> in this group. This function is useful when you need access to a particular animation. <i>index</i> is between 0 and <a href="qanimationgroup.html#animationCount">animationCount</a>() - 1.</p> <p><b>See also </b><a href="qanimationgroup.html#animationCount">animationCount</a>() and <a href="qanimationgroup.html#indexOfAnimation">indexOfAnimation</a>().</p> <!-- @@@animationAt --> <!-- $$$animationCount[overload1]$$$animationCount --> <h3 class="fn" id="animationCount"><a name="animationCount"></a><span class="type">int</span> QAnimationGroup::<span class="name">animationCount</span>() const</h3> <p>Returns the number of animations managed by this group.</p> <p><b>See also </b><a href="qanimationgroup.html#indexOfAnimation">indexOfAnimation</a>(), <a href="qanimationgroup.html#addAnimation">addAnimation</a>(), and <a href="qanimationgroup.html#animationAt">animationAt</a>().</p> <!-- @@@animationCount --> <!-- $$$clear[overload1]$$$clear --> <h3 class="fn" id="clear"><a name="clear"></a><span class="type">void</span> QAnimationGroup::<span class="name">clear</span>()</h3> <p>Removes and deletes all animations in this animation group, and resets the current time to 0.</p> <p><b>See also </b><a href="qanimationgroup.html#addAnimation">addAnimation</a>() and <a href="qanimationgroup.html#removeAnimation">removeAnimation</a>().</p> <!-- @@@clear --> <!-- $$$event[overload1]$$$eventQEvent* --> <h3 class="fn" id="event"><a name="event"></a><code>[override virtual protected] </code><span class="type">bool</span> QAnimationGroup::<span class="name">event</span>(<span class="type"><a href="qevent.html">QEvent</a></span> *<i>event</i>)</h3> <p>Reimplemented from <a href="qabstractanimation.html#event">QAbstractAnimation::event</a>().</p> <!-- @@@event --> <!-- $$$indexOfAnimation[overload1]$$$indexOfAnimationQAbstractAnimation* --> <h3 class="fn" id="indexOfAnimation"><a name="indexOfAnimation"></a><span class="type">int</span> QAnimationGroup::<span class="name">indexOfAnimation</span>(<span class="type"><a href="qabstractanimation.html#QAbstractAnimation">QAbstractAnimation</a></span> *<i>animation</i>) const</h3> <p>Returns the index of <i>animation</i>. The returned index can be passed to the other functions that take an index as an argument.</p> <p><b>See also </b><a href="qanimationgroup.html#insertAnimation">insertAnimation</a>(), <a href="qanimationgroup.html#animationAt">animationAt</a>(), and <a href="qanimationgroup.html#takeAnimation">takeAnimation</a>().</p> <!-- @@@indexOfAnimation --> <!-- $$$insertAnimation[overload1]$$$insertAnimationintQAbstractAnimation* --> <h3 class="fn" id="insertAnimation"><a name="insertAnimation"></a><span class="type">void</span> QAnimationGroup::<span class="name">insertAnimation</span>(<span class="type">int</span> <i>index</i>, <span class="type"><a href="qabstractanimation.html#QAbstractAnimation">QAbstractAnimation</a></span> *<i>animation</i>)</h3> <p>Inserts <i>animation</i> into this animation group at <i>index</i>. If <i>index</i> is 0 the animation is inserted at the beginning. If <i>index</i> is <a href="qanimationgroup.html#animationCount">animationCount</a>(), the animation is inserted at the end.</p> <p><b>Note: </b>The group takes ownership of the animation.</p><p><b>See also </b><a href="qanimationgroup.html#takeAnimation">takeAnimation</a>(), <a href="qanimationgroup.html#addAnimation">addAnimation</a>(), <a href="qanimationgroup.html#indexOfAnimation">indexOfAnimation</a>(), and <a href="qanimationgroup.html#removeAnimation">removeAnimation</a>().</p> <!-- @@@insertAnimation --> <!-- $$$removeAnimation[overload1]$$$removeAnimationQAbstractAnimation* --> <h3 class="fn" id="removeAnimation"><a name="removeAnimation"></a><span class="type">void</span> QAnimationGroup::<span class="name">removeAnimation</span>(<span class="type"><a href="qabstractanimation.html#QAbstractAnimation">QAbstractAnimation</a></span> *<i>animation</i>)</h3> <p>Removes <i>animation</i> from this group. The ownership of <i>animation</i> is transferred to the caller.</p> <p><b>See also </b><a href="qanimationgroup.html#takeAnimation">takeAnimation</a>(), <a href="qanimationgroup.html#insertAnimation">insertAnimation</a>(), and <a href="qanimationgroup.html#addAnimation">addAnimation</a>().</p> <!-- @@@removeAnimation --> <!-- $$$takeAnimation[overload1]$$$takeAnimationint --> <h3 class="fn" id="takeAnimation"><a name="takeAnimation"></a><span class="type"><a href="qabstractanimation.html#QAbstractAnimation">QAbstractAnimation</a></span> *QAnimationGroup::<span class="name">takeAnimation</span>(<span class="type">int</span> <i>index</i>)</h3> <p>Returns the animation at <i>index</i> and removes it from the animation group.</p> <p><b>Note: </b>The ownership of the animation is transferred to the caller.</p><p><b>See also </b><a href="qanimationgroup.html#removeAnimation">removeAnimation</a>(), <a href="qanimationgroup.html#addAnimation">addAnimation</a>(), <a href="qanimationgroup.html#insertAnimation">insertAnimation</a>(), and <a href="qanimationgroup.html#indexOfAnimation">indexOfAnimation</a>().</p> <!-- @@@takeAnimation --> </div> </div> </div> </div> </div> </div> <div class="footer"> <p> <acronym title="Copyright">©</acronym> 2019 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners.<br/> The documentation provided herein is licensed under the terms of the <a href="http://www.gnu.org/licenses/fdl.html">GNU Free Documentation License version 1.3</a> as published by the Free Software Foundation.<br/> Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners. </p> </div> </body> </html>