lvgl arc

目录

 

1.1 创建一个弧对象

1.2 设置弧的空间配置(颜色)

1.3 arc事件

1.4 效果图

a、初始状态

b、变化状态


1.1 创建一个弧对象

	//1.1 创建一个弧对象
	lv_obj_t *arc = lv_arc_create(lv_scr_act(), NULL);
	lv_arc_set_angles(arc, 0, 270); //设置Arc控件进度开始结束角度
	lv_obj_set_size(arc, 60, 60); //设置Arc控件大小
	lv_obj_align(arc, NULL, LV_ALIGN_IN_TOP_RIGHT, -20, 0); //对齐到屏幕中心,XY偏移0
	lv_obj_t *label = lv_label_create(arc, NULL); //在Arc控件上创建一个标签
	lv_obj_align(label, arc, LV_ALIGN_CENTER, 0, 0); //对齐到Arc控件中心
	lv_label_set_text(label, "Arc"); // 设置标签文本
	lv_obj_set_event_cb(arc, arc_event_handler);

 

1.2 设置弧的空间配置(颜色)

	static lv_style_t arc_style;
	lv_style_copy(&arc_style, &lv_style_plain);
	arc_style.line.color = LV_COLOR_BLUE;
	arc_style.line.width = 8;
	lv_arc_set_style(arc, LV_ARC_STYLE_MAIN, &arc_style);

1.3 arc事件

// Arc事件回调函数
static void arc_event_handler(lv_obj_t *obj, lv_event_t event)
{
    if (event == LV_EVENT_PRESSED)
	{
		static int16_t a = 0;

		angle = lv_arc_get_angle_end(obj);
		if (angle >= 360)
			angle = 0;
		else
			angle += 30;
		lv_arc_set_angles(obj, 0, angle);
	}
}

1.4 效果图

a、初始状态

b、变化状态

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值