コード例 #1
0
        public unsafe void TestDeleteChildrenWithRunningGroup()
        {
            // test if children can be activated when their group is stopped
            var group = new QParallelAnimationGroup();

            QVariantAnimation anim1 = new TestAnimation();

            anim1.StartValue = new QVariant(0);
            anim1.EndValue   = new QVariant(100);
            anim1.SetDuration(200);
            group.AddAnimation(anim1);

            Assert.AreEqual(anim1.Duration, group.Duration);

            group.Start();
            Assert.AreEqual(QAbstractAnimation.State.Running, group.state);
            Assert.AreEqual(QAbstractAnimation.State.Running, anim1.state);

            System.Threading.Thread.Sleep(80);
            Assert.Greater(group.CurrentLoopTime, 0);

            group.RemoveAnimation(anim1);
            anim1 = null;
            Assert.AreEqual(0, group.AnimationCount);
            Assert.AreEqual(0, group.Duration);
            Assert.AreEqual(QAbstractAnimation.State.Stopped, group.state);
            Assert.AreEqual(0, group.CurrentLoopTime);
        }
コード例 #2
0
        public unsafe void TestDeleteChildrenWithRunningGroup()
        {
            // test if children can be activated when their group is stopped
            var group = new QParallelAnimationGroup();

            QVariantAnimation anim1 = new TestAnimation();
            anim1.StartValue = new QVariant(0);
            anim1.EndValue = new QVariant(100);
            anim1.SetDuration(200);
            group.AddAnimation(anim1);

            Assert.AreEqual(anim1.Duration, group.Duration);

            group.Start();
            Assert.AreEqual(QAbstractAnimation.State.Running, group.state);
            Assert.AreEqual(QAbstractAnimation.State.Running, anim1.state);

            System.Threading.Thread.Sleep(80);
            Assert.Greater(group.CurrentLoopTime, 0);

            group.RemoveAnimation(anim1);
            anim1 = null;
            Assert.AreEqual(0, group.AnimationCount);
            Assert.AreEqual(0, group.Duration);
            Assert.AreEqual(QAbstractAnimation.State.Stopped, group.state);
            Assert.AreEqual(0, group.CurrentLoopTime);
        }