LVGL 8.2 meter
动画播放回调函数
static lv_obj_t* meter;
static void set_value(void* indic, int32_t v)
{lv_meter_set_indicator_value(meter, indic, v); // 设置表头指示值
}
创建meter
static void lv_example_meter_1(void)
{meter = lv_meter_create(lv_scr_act()); // 创建meter对象lv_obj_center(meter); // 居中显示lv_obj_set_size(meter, 200, 200); // 设置大小/*Add a scale first*/lv_meter_scale_t* scale = lv_meter_add_scale(meter); // 增加表刻度lv_meter_set_scale_ticks(meter, scale, 41, 2, 10, lv_palette_main(LV_PALETTE_GREY)); // 设置tickslv_meter_set_scale_major_ticks(meter, scale, 8, 4, 15, lv_color_black(), 10); // 设置major tickslv_meter_indicator_t* indic;/*Add a blue arc to the start*/indic = lv_meter_add_arc(meter, scale, 3, lv_palette_main(LV_PALETTE_BLUE), 0); //添加蓝色表弧指示lv_meter_set_indicator_start_value(meter, indic, 0); // 起始指示值0lv_meter_set_indicator_end_value(meter, indic, 20); // 结束指示值20/*Make the tick lines blue at the start of the scale*/indic = lv_meter_add_scale_lines(meter, scale, lv_palette_main(LV_PALETTE_BLUE), lv_palette_main(LV_PALETTE_BLUE), false, 0);// 添加蓝色刻度线lv_meter_set_indicator_start_value(meter, indic, 0); //刻度线起始值0lv_meter_set_indicator_end_value(meter, indic, 20);//刻度线结束值20/*Add a red arc to the end*/indic = lv_meter_add_arc(meter, scale, 3, lv_palette_main(LV_PALETTE_RED), 0);//添加红色表弧指示lv_meter_set_indicator_start_value(meter, indic, 80); // 起始指示值80lv_meter_set_indicator_end_value(meter, indic, 100); // 结束指示值100/*Make the tick lines red at the end of the scale*/indic = lv_meter_add_scale_lines(meter, scale, lv_palette_main(LV_PALETTE_RED), lv_palette_main(LV_PALETTE_RED), false,0);// 添加红色刻度线lv_meter_set_indicator_start_value(meter, indic, 80); //刻度线起始值80lv_meter_set_indicator_end_value(meter, indic, 100);//刻度线结束值100/*Add a needle line indicator*/indic = lv_meter_add_needle_line(meter, scale, 4, lv_palette_main(LV_PALETTE_GREY), -10); // 添加灰色表针/*Create an animation to set the value*/lv_anim_t a;lv_anim_init(&a); lv_anim_set_exec_cb(&a, set_value); //关联动画执行函数lv_anim_set_var(&a, indic); // 设置关联变量到动画lv_anim_set_values(&a, 0, 100); // 设置动画起始值0,结束值100lv_anim_set_time(&a, 2000); // 调置动画duration时间lv_anim_set_repeat_delay(&a, 100); // 设置重复动画前的延时时间lv_anim_set_playback_time(&a, 500); // 设置动画回播时间lv_anim_set_playback_delay(&a, 100); // 设置开始回播前的延时时间lv_anim_set_repeat_count(&a, LV_ANIM_REPEAT_INFINITE); // 无限循环重复播放 lv_anim_start(&a); //启动动画
}
运行效果
LVGL 8.2 meter相关推荐
- LVGL 8.2 meter with multiple arcs
动画回调函数 static lv_obj_t* meter; static void set_value(void* indic, int32_t v) {lv_meter_set_indicator ...
- LVGL 8.2 meter控件实现模拟时钟
动画回调函数 static lv_obj_t* meter; static void set_value(void* indic, int32_t v) {lv_meter_set_indicator ...
- CH32V307移植LVGL Master及Code::Blocks仿真笔记
一. LVGL简介 GUI(graphical user interface)是一种用于可视化显示的计算机接口软件,可显示计算机的运行信息,接受行为化的操作指令.1981年在Xerox PARC,Al ...
- lvgl lv_conf.h文件详解
学习的是正点原子的例程,跟着自己敲了些中文注释,特此分享 /*** @file lv_conf.h**//** COPY THIS FILE AS `lv_conf.h` NEXT TO the `l ...
- 【LVGL学习笔记】(三)控件使用
LVGL全程LittleVGL,是一个轻量化的,开源的,用于嵌入式GUI设计的图形库.并且配合LVGL模拟器,可以在电脑对界面进行编辑显示,测试通过后再移植进嵌入式设备中,实现高效的项目开发. LVG ...
- 物联网开发笔记(64)- 使用Micropython开发ESP32开发板之控制ILI9341 3.2寸TFT-LCD触摸屏进行LVGL图形化编程:控件显示
一.目的 这一节我们学习如何使用我们的ESP32开发板来控制ILI9341 3.2寸TFT-LCD触摸屏进行LVGL图形化编程:控件显示. 二.环境 ESP32 + ILI9341 3.2寸TFT-L ...
- UEFI 开发学习 - LVGL在EDK2上的移植
前言 我还在实习,在公司内接触了BIOS.所以小白一枚. 废话不多说,以下内容仅供参考. 我是看到一位大神的博客,爱影博客 - UEFI开发学习8 – LVGL GUI库的移植 大家可以自己去看看,我 ...
- 【RTT】移植:LVGL 8.0.2
开发板:潘多拉开发板 系统版本:v4.0.3 LVGL版本:8.0.2 注:这篇文章就简单记录下编译成功,跑了一个 demo 的过程,至于是否完全移植成功,不确定哈,毕竟 LVGL 还 ...
- LVGL 源码分析大全
LVGL 源码分析大全目录 1.概述 2.已完成源码分析文章列表 2.1.硬件抽像层(hal) 2.2.核心框架(core/misc) 2.3.定制功能 2.4.内部接口 2.5.案例讲解 2.6.其 ...
最新文章
- CVPR2020人脸防伪检测挑战赛冠军方案开源
- 【Git 第2课】 GitHub是什么?
- 百度云使用第三方工具下载文件
- Hadoop记录-JMX参数
- java多线程init,Java多线程 - 线程 - 初识
- Leetcode 137. Single Number II JAVA语言
- php打印负载函数、Linux awk打印负载
- 属性值动态调整_这可能是你见过最牛的CAD粗糙度动态块了!
- .unl 文件 导入 mysql,informix导出的unl格式数据怎么导入sql server 2008里呢
- 计算机视觉领域稍微容易中的期刊(第一版)
- python顺序查找算法解释_顺序查找算法详解(包含C语言实现代码)
- scan ip和vip的关系疑惑
- 魅族mx4pro刷linux,魅族MX4 Pro刷recovery教程_魅族MX4 Pro第三方recovery下载
- 静态路由绑定探测组功能的配置
- 健康生活无需等待,松下罗密欧系列洗衣机守护你的四月天
- SSH Tunneling
- 终于又可以用WLW了.
- oracle distinct 用法
- Android 实现推送功能
- vue 引入高德地图 路线规划