进度条(lv_bar)¶
零件和样式¶
进度条的主要部分称为 LV_BAR_PART_BG
,它使用典型的背景样式属性。
LV_BAR_PART_INDIC
是一个虚拟部件,还使用了所有典型的背景属性。默认情况下,指示器的最大尺寸与背景的尺寸相同,但是在其中设置正的填充值 LV_BAR_PART_BG
将使指示器变小。(负值会使它变大)如果在指标上使用了值样式属性,则将根据指标的当前大小来计算对齐方式。例如,中心对齐的值始终显示在指示器的中间,而不管其当前大小如何。
用法¶
值和范围¶
可以通过 lv_bar_set_value(bar, new_value, LV_ANIM_ON/OFF)
设置新值。该值以一个范围(最小值和最大值)解释,可以使用 lv_bar_set_range(bar, min, max)
进行修改。默认范围是 1..100。
lv_bar_set_value
中的新值可以根据最后一个参数 (LV_ANIM_ON/OFF)
设置是否带有动画。动画的时间可以通过 lv_bar_set_anim_time(bar, 100)
进行调整。时间以毫秒为单位。
也可以使用 lv_bar_set_start_value(bar, new_value, LV_ANIM_ON/OFF)
设置进度条的起始值
模式¶
如果已通过 lv_bar_set_type(bar, LV_BAR_TYPE_SYMMETRICAL)
启用,则条形可以对称地绘制为零(从零开始,从左至右绘制)。
范例¶
简单的进度条¶
上述效果的示例代码:
1 #include "../../../lv_examples.h"
2 #if LV_USE_BAR
3
4 void lv_ex_bar_1(void)
5 {
6 lv_obj_t * bar1 = lv_bar_create(lv_scr_act(), NULL);
7 lv_obj_set_size(bar1, 200, 20);
8 lv_obj_align(bar1, NULL, LV_ALIGN_CENTER, 0, 0);
9 lv_bar_set_anim_time(bar1, 2000);
10 lv_bar_set_value(bar1, 100, LV_ANIM_ON);
11 }
12
13 #endif
相关API¶
TODO