LVGL学习笔记14 - 线Line

31 篇文章 81 订阅

目录

1. 点数组

2. 样式

2.1 宽度

 2.2 颜色

2.3 末端形态

 2.4 虚线


通过一组点绘制出相连的直线,通过lv_line_create创建相应的对象。

线只有LV_PART_MAIN一个部件。

1. 点数组

点必须存储在 lv_point_t 类型的数组中,并通过 

void lv_line_set_points(lv_obj_t * obj, const lv_point_t points[], uint16_t point_num)

函数将数组传递给line对象。

lv_obj_t* obj1 = lv_line_create(lv_scr_act());
static lv_point_t line_points[] = { {5, 5}, {70, 70}, {120, 10}, {180, 60}, {240, 10} };
lv_line_set_points(obj1, line_points, sizeof(line_points) / sizeof(lv_point_t));

2. 样式

2.1 宽度

lv_obj_set_style_line_width(obj1, 10, LV_PART_MAIN);

 

 2.2 颜色

lv_obj_set_style_line_color(obj1, lv_color_hex(0xff0000), LV_PART_MAIN);

2.3 末端形态

和Arc类似,末端可以是圆的或者直线。

lv_obj_set_style_line_rounded(obj1, true, LV_PART_MAIN);

 

 2.4 虚线

虚线只能是水平或者垂直方向。通过lv_obj_set_style_line_dash_width和lv_obj_set_style_line_dash_gap设置实线和空部分的宽度。

static lv_point_t line_points[] = { {50, 50}, {270, 50}};
lv_line_set_points(obj1, line_points, sizeof(line_points) / sizeof(lv_point_t));

lv_obj_set_style_line_width(obj1, 10, LV_PART_MAIN);
lv_obj_set_style_line_color(obj1, lv_color_hex(0xff0000), LV_PART_MAIN);
lv_obj_set_style_line_rounded(obj1, false, LV_PART_MAIN);
lv_obj_set_style_line_dash_width(obj1, 10, LV_PART_MAIN);
lv_obj_set_style_line_dash_gap(obj1, 20, LV_PART_MAIN);

 dash_width设置的是红色实线部分的宽度,dash_gap设置的是2个红色实线的间隔。

将末端改成圆形。

lv_obj_set_style_line_rounded(obj1, true, LV_PART_MAIN);

可以看到头尾多了2个原点。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值