科讯网

您现在的位置是:首页 > 新手入门 > 技术进阶

技术进阶

后台-插件-广告管理-手机广告位-内容正文顶部468X60

GIF控件

2021-07-31 01:48:16技术进阶
GIF控件什么是GIF控件?GIF动画、ICON图标文件可以通过动画控件来显示。用户可以设置动画控件自动播放,也可以设置触摸,本例程中介绍动画控件常见的应用,结合工程中的画面介绍每

GIF控件

什么是GIF控件?

GIF01WcR科讯网

GIF动画、ICON图标文件可以通过动画控件来显示。用户可以设置动画控件自动播放,也可以设置触摸,本例程中介绍动画控件常见的应用,结合工程中的画面介绍每一个应用的配置,常见的应用如下所示WcR科讯网

  1. 开机动画:开机后,动画自动播放,并在播放完成后执行指定的动作
  2. ICON文件播放:使用VisualTFT软件制作ICON文件,ICON图标循环播放

7.1 GIF控件属性介绍

GIF控件属性如下所示WcR科讯网

image-20210517164022133WcR科讯网

初始化显示

进入该画面时控件是否初始化显示WcR科讯网

  1. 选择“否”,控件初始化不显示。关闭之后用户如果想要把动画显示出来,可以用指令助手的显示隐藏控件发送指令进行初始化显示
  2. 选择“是”,开启初始化显示,控件初始化显示

动画文件

选择播放文件:支持GIF、ICON文件WcR科讯网

透明处理

  1. 使用透明色:图标中的透明色直接透明显示
  2. 与背景混合:图标中的透明色显示当前画面的相同坐标的背景色或背景图片
  3. 与背景色融合并压缩:一般用于压缩有大量透明区域的PNG图片(环形京都条、汽车仪表等)

GIF03WcR科讯网

自动播放

进入该画面时动画是否自动播放WcR科讯网

  1. 否:不自动播放
  2. 是:自动播放WcR科讯网

  3. 间隔时间:自动播放间隔时间(单位为毫秒)WcR科讯网

  4. 循环次数:循环播放次数(0表示不断循环播放)WcR科讯网

  5. 播放结束时:播放结束时的处理(不处理、发送通知、切换到下一画面)WcR科讯网

触摸设置

手指在控件上触摸或滑动时,是否通知或换帧WcR科讯网

  1. 禁止触摸:不能触摸
  2. 允许触摸:触摸控件时发送通知WcR科讯网

  3. 水平/垂直滑动时换帧:水平/垂直滑动时,切换帧并发送通知WcR科讯网

  4. 步长(像素):滑动切换一帧的单位,切换帧数=滑动距离/步长,如下所示

GIF04WcR科讯网

7.2 开机动画

【开机动画】画面,介绍开机动画设置,可以设置开机动画自动播放,并在播放结束后自动跳到下一页WcR科讯网

画面配置

在【开机动画】画面的“背景图片”导入相应的美工图片。在该画面中添加动画控件,如下所示WcR科讯网

image-20210517173615355WcR科讯网

属性配置

设置动画控件(控件ID:1)的属性,【动画文件】选择GIF文件、设置【间隔时间】为“35”、【播放结束时】为“切换到下一帧”,配置如下所示WcR科讯网

GIF06WcR科讯网

运行预览

运行虚拟屏,动画控件播放完毕自动跳转下一页面,运行效果如下所示WcR科讯网

WcR科讯网

MCU控制GIF播放、暂停

参考开发包keil程序中的him.dever.h文件函数声明以及him.dever.c文件中的定义WcR科讯网

MCU控制开启播放动画

例如用户需开始播放动画,则直接调用播放动画函数AnimationStart ( )即可,代码如下所示WcR科讯网

/********************************************************************
** Function name:     void AnimationStart(uint16 screen_id,
**                                        uint16 control_id);
** Descriptions    :  开始播放动画
** input parameters:  screen_id:   画面ID
**                    control_id:  控件ID 
** output parameters: 无
** Returned value   : 无
********************************************************************/
{
  ……
  AnimationStart(0, 1); //画面ID0,控件ID1,开始播放动画
  ……
}
MCU控制停止播放动画

例如用户需停止播放动画,则直接调用停止播放动画函数AnimationStop ( )即可,代码如下所示WcR科讯网

/********************************************************************
** Function name:    void AnimationStop(uint16 screen_id,
**                                      uint16 control_id);
** Descriptions    :  停止播放动画
** input parameters:  screen_id:   画面ID
**                    control_id:  控件ID 
** output parameters: 无
** Returned value   : 无
********************************************************************/
{
  ……
  AnimationStop(0, 1); //画面ID0,控件ID1,停止播放动画
  ……
}

7.3 ICON文件播放

ICON文件播放】画面,介绍制作ICON文件、播放ICON文件设置WcR科讯网

画面配置

在【ICON文件播放】画面的“背景图片”导入相应的美工图片。在该画面中添加动画控件,如下所示WcR科讯网

GIF08WcR科讯网

图标生成

本章节不阐述图标的制作过程,具体可参考 图标控件 一章节WcR科讯网

属性配置

设置动画控件(控件ID:1)的属性,【动画文件】选择制作好的ICON文件、设置【间隔时间】为“550”,配置如下所示WcR科讯网

image-20210517175619428WcR科讯网

运行预览

运行虚拟屏,VisualTFT软件和虚拟屏用“虚拟串口”建立联机。打开【指令助手】,选择左侧导航栏【动画控件】,设置“动画控件显示”区域的指令参数。对画面(画面ID:1)中的动画控件(控件ID:1)暂停播放,然后手动显示下一帧。则在虚拟屏中,该动画控件暂停并显示下一帧,运行效果如下所示WcR科讯网

GIF10WcR科讯网

外部MCU控制

参考开发包keil程序中的him.dever.h文件函数声明以及him.dever.c文件中的定义。例如用户需显示动画的下一帧,则直接调用显示动画下一帧函数AnimationPlayNext ( )即可,代码如下所示WcR科讯网

/*******************************************************************
** Function name:    void AnimationPlayNext(uint16 screen_id,
**                                          uint16 control_id);
** Descriptions    :  播放下一帧
** input parameters:  screen_id:   画面ID
**                    control_id:  控件ID 
** output parameters: 无
** Returned value   : 无
********************************************************************/
{
  ……
  AnimationPlayNext(0, 1); //画面ID0,控件ID1,播放下一帧
  ……
}
后台-插件-广告管理-手机广告位-内容正文底部468X60

文章评论