当前位置: 首页 > news >正文

西安跨境电商平台网站淘宝网网站设计分析

西安跨境电商平台网站,淘宝网网站设计分析,dw做网站详细教程,网站域名备案更改吗目录 引言相关阅读基础属性说明工程结构示例代码解析示例1:手动控制动画(ControlledAnimation.qml)示例2:顺序动画(SequentialAnimationDemo.qml)示例3:并行动画(ParallelAnimationD…

目录

    • 引言
    • 相关阅读
    • 基础属性说明
    • 工程结构
    • 示例代码解析
      • 示例1:手动控制动画(ControlledAnimation.qml)
      • 示例2:顺序动画(SequentialAnimationDemo.qml)
      • 示例3:并行动画(ParallelAnimationDemo.qml)
    • 总结
    • 工程下载

引言

接上文:QML 属性动画、行为动画与预定义动画。本文继续通过QML示例,介绍两种动画(顺序动画SequentialAnimation和并行动画ParallelAnimation)如何使用,并附带完整的示例代码。

相关阅读

  • ParallelAnimation官方文档
  • SequentialAnimation官方文档

基础属性说明

属性类型说明
targetObject动画作用的目标对象
propertystring需要动画化的属性名称
durationint动画持续时间(毫秒)
easing.typeenumeration缓动曲线类型(如Easing.InOutQuad)
runningbool控制动画运行状态

工程结构

qml_animation/
├── CMakeLists.txt
├── Main.qml          # 主界面
├── ControlledAnimation.qml      # 手动控制动画
├── SequentialAnimationDemo.qml  # 顺序动画示例
├── ParallelAnimationDemo.qml    # 并行动画示例
├── images.qrc        # 资源文件
└── main.cpp          # 程序入口

示例代码解析

示例1:手动控制动画(ControlledAnimation.qml)

import QtQuick
import QtQuick.ControlsRectangle {width: 400height: 400AnimatedImage {id: controlImgsource: "qrc:/images/huaji.gif"x: 0y: 150width: 100height: 100}NumberAnimation {id: controlledAnimtarget: controlImgproperty: "x"from: 0to: 300duration: 1500}Row {anchors.bottom: parent.bottomspacing: 10Button {text: "开始"onClicked: controlledAnim.start()}Button {text: "暂停"onClicked: controlledAnim.pause()}Button {text: "恢复"onClicked: controlledAnim.resume()}Button {text: "停止"onClicked: controlledAnim.stop()}Button {text: "重启"onClicked: controlledAnim.restart()}}
}

代码说明

这段代码通过组合使用 QML 的各种元素和控件,实现了对一个表情包移动动画的控制功能,用户可以通过点击不同的按钮来控制表情包的移动动画的开始、暂停、恢复、停止和重启。

其中NumberAnimation用于控制表情包的水平移动。设置了动画的目标对象(target)为 controlImg(即前面定义的表情包动态图),要控制的属性(property)为 “x”(水平坐标)。动画的起始位置(from)为 0,结束位置(to)为 300 像素,动画持续时间(duration)为 1500 毫秒。

运行效果

请添加图片描述


示例2:顺序动画(SequentialAnimationDemo.qml)

import QtQuick
import QtQuick.ControlsRectangle {width: 400height: 400SequentialAnimation {id: seqAnimationrunning: falseNumberAnimation { target: rect1; property: "rotation"; from: 0; to: 315; duration: 500 }NumberAnimation { target: rect2; property: "rotation"; from: 0; to: 315; duration: 500 }NumberAnimation { target: rect3; property: "rotation"; from: 0; to: 315; duration: 500 }}Row {spacing: 20anchors.centerIn: parentRectangle {id: rect1width: 80height: 80color: "pink"}Rectangle {id: rect2width: 80height: 80color: "cyan"}Rectangle {id: rect3width: 80height: 80color: "lime"}}Button {text: "启动动画"anchors.bottom: parent.bottomonClicked: {seqAnimation.start()}}
}

代码说明

这段代码通过组合使用 QML 的各种元素和控件,实现了三个彩色矩形的旋转动画效果,并通过按钮来控制动画的启动。用户点击 “启动动画” 按钮后,三个矩形会按照预先定义的动画序列依次旋转。

SequentialAnimation用于定义一个动画序列,动画会按照添加的顺序依次执行。设置了动画序列的初始状态为不运行(running: false)。
定义了三个NumberAnimation元素,每个动画都控制一个矩形(rect1、rect2、rect3)的旋转属性(rotation),起始角度为 0,结束角度为 315 度,动画持续时间均为 500 毫秒。

运行效果

请添加图片描述


示例3:并行动画(ParallelAnimationDemo.qml)

import QtQuick
import QtQuick.ControlsRectangle {width: 400height: 400ParallelAnimation {id: palAnimationrunning: falseNumberAnimation { target: rect1; property: "rotation"; from: 0; to: 315; duration: 500 }NumberAnimation { target: rect2; property: "rotation"; from: 0; to: 315; duration: 500 }NumberAnimation { target: rect3; property: "rotation"; from: 0; to: 315; duration: 500 }}Row {spacing: 20anchors.centerIn: parentRectangle {id: rect1width: 80height: 80color: "pink"}Rectangle {id: rect2width: 80height: 80color: "cyan"}Rectangle {id: rect3width: 80height: 80color: "lime"}}Button {text: "启动动画"anchors.bottom: parent.bottomonClicked: {palAnimation.start()}}
}

代码说明

运行效果

请添加图片描述


总结

通过本文中的三个示例,进行如下总结:

  • 手动控制动画适合需要精确控制动画生命周期的场景
  • 顺序动画适用于需要分步执行的动画序列
  • 并行动画可提升多个动画元素的协同表现力

工程下载

Gitcode项目地址:GitCode -> QML 动画示例

在这里插入图片描述
在之前的项目上增加了3个示例,实现了一个主界面(main.qml),基于swipeview为容器,展示6个示例。

http://www.dtcms.com/a/411229.html

相关文章:

  • SSL 证书的重要性
  • 快速上手XXL-JOB
  • 分组交换总结
  • 亚马逊网站怎么做做网站一般注册商标哪个类
  • daily notes[54]
  • 机器学习——决策树详解
  • 万象EXCEL开发(六)excel单元格运算逻辑 ——东方仙盟金丹期
  • Redis数据结构和常用命令
  • 网站开发用什么开发无锡新吴区建设环保局网站
  • 深圳易捷网站建设计算机(网站建设与维护)
  • 智能微电网 —— 如何无缝集成分布式光伏 / 风电?
  • 苏州网站建设的公司万维网
  • 比较好的网站建设论坛wordpress纯静态化
  • 昆明云南微网站搭建西安网络建站
  • 怎么做二维码进入公司网站做网站推广优化哪家好
  • Java 中的代理模式
  • 网站 繁体 js汽车cms
  • 怀化 网站建设东海县做网站广告
  • 嘉兴网页制作网站排名企业网站建设用什么语言
  • 《录井工程与管理》——第六章 钻井参数录井
  • 视觉/深度学习/机器学习相关面经总结(3)(持续更新)
  • Qt 自定义控件(继承 QWidget)面试核心指南
  • 网站建设友汇wordpress自动提取标签
  • 网络编程初识
  • Apring Ai 和Spring Ai Alibaba有什么区别
  • 网站开发的例子网站获取信息
  • 活到老学到老之Jenkins build triggers中的定时schedule规则细讲
  • 企业级 MySQL 8 全流程指南:源码编译安装、主从同步、延迟复制、半同步与 MHA 高可用搭建
  • 有服务器了怎么做网站三星网上商城分期
  • 交付场景下的 iOS 混淆实战,无源码部分源码如何做成品加固、供应链验证与交付治理