Insert title here

lvgl7+VS2017虚拟机做一个可以双向加载的进度条

lvgl的bar控件是进度条控件,但是进度条控件只能从左到右增加,或者竖着从下到上增加

(要设置bar控制竖直只需要lv_obj_set_size(长,宽),宽大于长即可)

 

这里使用slider控件去模拟一个双向加载的进度条

lv_obj_t* slider = lv_slider_create(lv_scr_act(), NULL);//在屏幕上创建一个slider控件

lv_obj_set_size(slider, 180, 16);//设置slider的尺寸为长180,宽16

lv_obj_set_pos(slider, 128, 128);//设置位置为128,128

lv_slider_set_value(slider,10,1); //设置 slider 控件的值,这个可以设置也可以不用,效果是slider从中间分开向右边移动10

lv_slider_set_left_value(slider, 0, 1);//设置 slider 控件左边滑块的值,我们下一步要隐藏到这个滑块,让它模拟成进度条

lv_obj_set_style_local_opa_scale(slider, LV_SLIDER_PART_KNOB, LV_STATE_DEFAULT,LV_OPA_0);//让滑块透明化

lv_slider_set_type(slider, LV_SLIDER_TYPE_RANGE);//多加一个slider滑块,可以从中间向左增加

lv_obj_set_style_local_bg_color(slider, LV_BAR_PART_INDIC, LV_STATE_DEFAULT, LV_COLOR_BLACK)//设置slider的背景为黑色

 

 

效果如下图,可以随意滑动,看不到滑块,使用lv_slider_set_value去设置slider的值就可以模拟成进度条了

 

posted @ 2021-07-31 14:56  这一切足够了  阅读(569)  评论(0编辑  收藏  举报
复制代码