[Interest] Updating NumberAnimation from/to at runtime

Shantanu Tushar shaan7in at gmail.com
Fri Jul 14 11:27:17 CEST 2017


Hi,

Consider the following code which draws two rectangles - a red rectangle
which contains another blue rectangle.

Rectangle {
        id: r1
        anchors.centerIn: parent
        width: 300; height: 100
        color: "red"

        Rectangle {
            id: r2
            width: 100; height: 100
            color: "blue"

            NumberAnimation on x {
                loops: Animation.Infinite
                from: 0; to: r1.width-r2.width
                duration: 1000

                onToChanged: console.log(to)
            }
        }

        NumberAnimation on width {
            loops: Animation.Infinite
            from: 300; to: 100
            duration: 10000
        }
    }

The blue rectangle is supposed to keep moving inside the red rectangle by
means of a NumberAnimation. However, the width of the red rectangle changes
according to another animation.

I thought this will work fine and the blue rectangle will be confined to
the red rectangle because of the following binding-

to: r1.width-r2.width

However, thats not what happens. The blue rectangle overflows the red
rectangle, as if the binding never got updated. But, I can see that the
`console.log(to)` does prove the binding is working.

(Screenshot at http://i.imgur.com/yDTYbv9.png )

Is this a limitation of NumberAnimation? Or am I using it wrong?

-- 
Shantanu Tushar    (UTC +0530)
shantanu.io
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20170714/01bd4e5c/attachment.html>


More information about the Interest mailing list