跟着官网的教程学lvgl,在画圆弧的时候发现不知道怎么设置圆弧的粗细。
官网教程没用到,查百度半天也没找着。最后翻函数手册发现原来 lv_style_set_arc_width()
这个函数就是用来设置圆弧的粗细的。(我以为是用来设置宽度的)
LVGL版本
lvgl 8.0.2
函数手册:https://docs.lvgl.io/8/_downloads/39cea4971f327964c804e4e6bc96bfb4/LVGL.pdf
函数定义
void lv_style_set_arc_width(lv_style_t *style, lv_coord_t value)
示例代码
lv_obj_t * arc = lv_arc_create(lv_scr_act());
static lv_style_t arc_width_style;
lv_style_set_arc_width(&arc_width_style, 20); // 设置样式的圆弧粗细
lv_obj_add_style(arc, &arc_width_style, LV_PART_MAIN); // 将样式应用到圆弧背景
lv_obj_add_style(arc, &arc_width_style, LV_PART_INDICATOR); // 将样式应用到圆弧前景
lv_obj_remove_style(arc, NULL, LV_PART_KNOB);
lv_obj_clear_flag(arc, LV_OBJ_FLAG_CLICKABLE);
lv_obj_set_size(arc, 180, 180);
lv_obj_set_rotation(arc, 150);
lv_arc_set_bg_angles(arc, 0, 240);
lv_arc_set_value(arc, 80);
lv_obj_center(arc);
备注
lv_style_t 需要声明为静态变量。