|
|
本帖最后由 bcwx 于 2023-5-17 16:00 编辑
一个渐变色的进度条,可以修改渐变的方向,本实验采用上下渐变,修改程序可以变成左右渐变

- static void set_temp(void * bar,int32_t temp)
- {
- lv_bar_set_value(bar,temp,LV_ANIM_ON);
- }
- void Boot_Pagr(lv_obj_t * parent)
- {
- static lv_style_t bar_bg; //创建bar背景样式
- lv_style_init(&bar_bg); //初始化样式
- lv_style_set_bg_opa(&bar_bg,LV_OPA_COVER); //设置背景透明度
- lv_style_set_bg_color(&bar_bg,lv_palette_main(LV_PALETTE_RED)); //设置背景颜色
- lv_style_set_bg_grad_color(&bar_bg,lv_palette_main(LV_PALETTE_BLUE)); //设置下半背景颜色
- lv_style_set_bg_grad_dir(&bar_bg,LV_GRAD_DIR_VER); //设置下半部分背景方向
- lv_obj_t * bar = lv_bar_create(parent); //设置bar对象
- lv_obj_add_style(bar,&bar_bg,LV_PART_INDICATOR); //添加样式
- lv_obj_set_size(bar,200,20); //设置尺寸
- lv_obj_center(bar); //居中样式
- lv_bar_set_range(bar,0,100); //设置范围
- lv_anim_t a; //设置动画
- lv_anim_init(&a); //初始化动画
- lv_anim_set_exec_cb(&a,set_temp); //设置回调
- lv_anim_set_time(&a,3000); //设置时间
- lv_anim_set_playback_time(&a,3000); //设置回退时间
- lv_anim_set_var(&a,bar); //设置动画对象
- lv_anim_set_values(&a,0,100); //设置动画值
- lv_anim_set_repeat_count(&a,LV_ANIM_REPEAT_INFINITE); //设置动画重复
- lv_anim_start(&a); //开始动画
- }
复制代码
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|