Little VGL之仪表控件

对于仪表控件,类似于汽车仪表盘一样;也是已经继承好的,我们只需设置修改即可;在这里插入图片描述
代码如下:

void gauge_test(void)
{
    
    
    /*Create a style*/
    static lv_style_t style;
    lv_style_copy(&style, &lv_style_pretty_color);
    style.body.main_color = lv_color_hex3(0x666);     /*开始的刻度条颜色*/
    style.body.grad_color =  lv_color_hex3(0x666);    /*结束的刻度条颜色*/
    style.body.padding.left = 10;                     /*刻度条的长度*/
    style.body.padding.inner = 8 ;                    /*文本与刻度条的距离*/
    style.body.border.color = lv_color_hex3(0x333);   /*指针圆环的颜色*/
    style.line.width = 3;                             /*线条宽度*/
    style.text.color = lv_color_hex3(0x333);          /*文本颜色*/
    style.line.color = LV_COLOR_RED;                  /*超出临界值的线条颜色*/

    /*Describe the color for the needles*/
    static lv_color_t needle_colors[3];
    needle_colors[0] = LV_COLOR_BLUE;       //设置颜色效果
    needle_colors[1] = LV_COLOR_ORANGE;
    needle_colors[2] = LV_COLOR_PURPLE;

    /*Create a gauge*/
    lv_obj_t * gauge1 = lv_gauge_create(lv_scr_act(), NULL);    //获取屏幕对象
    lv_gauge_set_style(gauge1, LV_GAUGE_STYLE_MAIN, &style);    //设置风格样式
    lv_gauge_set_needle_count(gauge1, 3, needle_colors);        //设置指针颜色容量
    lv_obj_set_size(gauge1, 150, 150);                          //设置仪表大小
    lv_obj_align(gauge1, NULL, LV_ALIGN_CENTER, 0, 20);         //设置仪表对齐方式
    lv_gauge_set_critical_value(gauge1, 80);                    
    lv_gauge_set_range(gauge1, 0, 100);             

    /*Set the values*/
    lv_gauge_set_value(gauge1, 0, 10);
    lv_gauge_set_value(gauge1, 1, 20);
    lv_gauge_set_value(gauge1, 2, 30);

}

现实在项目中,该控件用到的地方很少;如果需要更多详细的内容;则可以看正点原子的数据手册;;

猜你喜欢

转载自blog.csdn.net/weixin_43352501/article/details/115536441
今日推荐