LVGL笔记15–lv_bar进度条

LVGL笔记15–lv_bar进度条

lv_bar 进度条它由背景和指示器俩部分构成,这俩部分的样式都可以被单独设置,然后此进度条会根据它的宽和高的大小来自动决定它是水平进度条还是垂直进度条,可以通过lv_bar_set_range 接口来设置进度条的数值范围,通过 lv_bar_set_value 接口来设置一个新的进度值,与此同时可选一个进度变化的动画效果。默认的进度条样式比较一般,通过设置样式可以把进度条设置的美观一些。

lv_bar进度条主要数据类型

enum {
    LV_BAR_STYLE_BG,
    LV_BAR_STYLE_INDIC,
};
typedef uint8_t lv_bar_style_t;

//LV_BAR_STYLE_BG: 背景的样式,默认值为 lv_style_pretty
//LV_BAR_STYLE_INDIC: 指示器的样式,默认值为 lv_style_pretty_color, 它使用style.body.padding 
//里面的 left, top, right, bottom 等字段来控制与背景边框之间的距离

API函数接口

  • 创建对象

    /*--------------------------------------------------------------------------------
    	这个函数用来创建lv_bar进度条控件
    	par: 父对象
    	copy: 拷贝的对象,如果无拷贝的话,传 NULL 值
    	返回值:
    		返回创建出来的对象,如果返回 NULL 的话,说明堆空间不够了
    ---------------------------------------------------------------------------------*/
    lv_obj_t * lv_bar_create(lv_obj_t * par, const lv_obj_t * copy);
    
  • 设置进度条范围

    /*--------------------------------------------------------------------------------
    	这个函数用来设置lv_bar进度条范围(如果不设置的话,则默认范围为[0,100])
        bar: 进度条对象
        min: 最小值
        max: 最大值
    ---------------------------------------------------------------------------------*/
    void lv_bar_set_range(lv_obj_t * bar, int16_t min, int16_t max);
    
  • 设置新的进度条

    /*--------------------------------------------------------------------------------
    	这个函数用来设置lv_bar进度条的进度值
        bar: 进度条对象
        value: 新的进度值,此值需要在进度范围内
        anim: 在切换到新的进度值时,是否使能动画效果,LV_ANIM_ON 代表使能,LV_ANIM_OFF代表 不使能
    ---------------------------------------------------------------------------------*/
    void lv_bar_set_value(lv_obj_t * bar, int16_t value, lv_anim_enable_t anim);
    
  • 设置动画时长

    /*--------------------------------------------------------------------------------
    	这个函数用来设置lv_bar进度条的动画时长
        bar: 进度条对象
        anim_time: 动画时长,单位为 ms
    ---------------------------------------------------------------------------------*/
    void lv_bar_set_anim_time(lv_obj_t * bar, uint16_t anim_time);
    
  • 设置样式

    /*--------------------------------------------------------------------------------
    	这个函数用来设置lv_bar进度条的样式
        bar: 进度条对象
        type: 要设置哪一个部件的样式,有俩个可选值如下:
        	LV_BAR_STYLE_BG: 是设置背景的样式
        	LV_BAR_STYLE_INDIC: 是设置指示器的样式
        style: 样式
    ---------------------------------------------------------------------------------*/
    void lv_bar_set_style(lv_obj_t * bar, lv_bar_style_t type, const lv_style_t * tyle);
    

2021-2-15–wrs

你可能感兴趣的:(LVGL学习笔记)