QML-状态过渡

import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Controls 2.5

Window {
    width: 640
    height: 480
    color: "white"
    title: qsTr("My QML")
    //窗口显示与否
    visible: true


        Rectangle {
            id: flashingblob
            width: 75; height: 75
            color: "blue"
            opacity: 1.0

            //立刻触发
            PropertyAnimation on x{
                to: 100
                duration: 1000

            }
            PropertyAnimation on y{
                to: 100
                duration: 1000
            }
            PropertyAnimation on width{
                to: 300
                duration: 2000
            }
//            PropertyAnimation on color{
//                to:"black"
//                duration: 2000
//            }

            //立刻触发-状态过渡
            SequentialAnimation on color{

                ColorAnimation {
                    to: "yellow";
                    duration: 1000
                }

                ColorAnimation {
                    to: "black"
                    duration: 1000
                }
            }

            MouseArea {
                anchors.fill: parent
                onClicked: {
                    animateColor.start()//颜色变化
                    animateOpacity.start()//透明度变化
                    animateWidth.start()//几何变化
                }
            }
            //点击触发
            PropertyAnimation {
                id: animateColor;
                target: flashingblob;
                properties: "color";
                to: "green";
                duration: 1000
            }
            NumberAnimation {
                id: animateOpacity
                target: flashingblob
                properties: "opacity"
                from: 0.1
                to: 1.0
                duration: 1000

           }
            NumberAnimation {
                id:animateWidth
                target: flashingblob
                properties: "width"
                from: 75
                to: 150
                duration: 1000

            }
        }
}

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值