当前位置: 首页 > 知识库问答 >
问题:

如何在ListView中的一个项目上触发动画

郝池暝
2023-03-14
ApplicationWindow {
    id: window
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    ListModel {
        id: modelList
        ListElement {}
        ListElement {}
        ListElement {}
    }

    ListView {
        width: window.width
        height: window.height

        model: modelList
        delegate: Rectangle {
            width: window.width
            height: window.height/10
            color: "red"
            radius : 10
            SequentialAnimation on color { //Should be only triggered when button clicked
                ColorAnimation { to: "yellow"; duration: 1000 }
                ColorAnimation { to: "red"; duration: 1000 }
            }

            Button {
                text: "trigger animation"
                anchors{
                    right: parent.right
                    top: parent.top
                    bottom: parent.bottom
                    margins: 10
                }

                onClicked: {
                    //Trigger SequentialAnimation
                }
            }
        }
    }
}

共有1个答案

易和怡
2023-03-14

仅当希望更改自动动画时,才在属性上使用动画

在您的示例中,您需要删除颜色上的部分,然后给动画一个ID:youranimation,然后在按钮上单击youranimation.start()

实际上,on color似乎也是可能的,跳过设置目标:

SequentialAnimation on color {
  id: yourAnimation
  ColorAnimation { to: "yellow"; duration: 1000 }
  ColorAnimation { to: "red"; duration: 1000 }
  running: false
}

 类似资料:
  • 我有一个WinJS ListView,它的项目使用模板函数创建(选项指向一个函数)。返回的项目内部有一个div,该div具有win交互类,因此可以接受输入。具体来说,该div需要能够滚动以显示更多适合ListView项的内容。 滚动与应用于div的win交互类完美配合。我试图解决的问题是允许正常的单击(鼠标向下,鼠标向上)仍然触发ListView上的事件,同时仍然允许滚动ListView项中的di

  • 安装了win10,安装了Visual Studio+Xamarin。我创建了Xamarin论坛项目,并尝试在Android上运行: 如何正确地开始?

  • 我正在构建一个定制的Java库。我把我的大部分“重复”代码都保存在那里,比如文件处理、字符串处理等。每次我想使用它们时,我都必须将该类复制并粘贴到我正在进行的其他项目中。有没有办法让这个自定义库类成为“依赖项”?我在用我的智能手机。

  • 问题内容: 我有一个模板,仅当当前项目与上一个项目具有某些不同的字段时,才想在其中生成一些HTML。如何在ng-repeat中访问上一个项目? 问题答案: 你可以做类似的事情 JS 演示:小提琴 注意: 是针对指令数组的,它可能与作用域数组不同。使用内联变量访问正确的数组。 如果您筛选或订购,则为。

  • 当新项目添加到视图中时,我试图使我的listview移动到最后一个项目。有了textview,我可以通过这样做来实现这一点 但对于带有适配器的listview,我似乎无法找到调用的方法。我的适配器设置

  • 问题内容: 对于以下任务,我需要您的建议和指导。 我有一个包含两个JComboBox的框架,假设它们分别命名为combo1和combo2,一个JTable和其他组件。 在初始阶段,当上述组件可见框架时。combo1组合框填充了一些值,但在初始阶段未选择任何值,combo2组合框被禁用并且表为空。 我在combo1和combo2上添加了一个actionListener。combo1中有两种类型的值,