这一期讲解的控件是条形码,条形码在lvgl中是没有具体控件的需要用户去自定义组件,这里使用code128并由fhunleth提供。
(1)GUI-guider中使用
在控件列表中拖拽条形码控件,将控件拖入到屏幕中然后点击条形码在右侧属性面板中可以调试参数。

(2)用法
1.在lv_conf.h中启用LV_USE_BARCODE。
2.使用lv_barcode_create()创建条形码对象,使用lv_barcode_update()生成条形码。
- 调用 lv_barcode_set_scale() 调整缩放,调用 lv_barcode_set_dark_color() 和 lv_barcode_set_light_color() 调整颜色,调用 lv_barcode_set_direction() 设置显示方向,再次调用 lv_barcode_update() 重新生成条形码。
(3)使用提示
• 最好不要手动设置条形码的宽度,因为当 Widget 的宽度小于条形码的宽度时,由于截断,显示会不完整。
• 缩放调整只能是整数倍,例如,lv_barcode_set_scale(barcode, 2) 意味着 2x 缩放。
• 方向调整可以是 LV_DIR_HOR 或 LV_DIR_VER。
(4)代码
//Write style for screen_1, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
lv_obj_set_style_bg_opa(ui->screen_1, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
lv_obj_set_style_bg_color(ui->screen_1, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT);
lv_obj_set_style_bg_grad_dir(ui->screen_1, LV_GRAD_DIR_NONE, LV_PART_MAIN|LV_STATE_DEFAULT);
//Write codes screen_1_barcode_1
//创建条形码对象
ui->screen_1_barcode_1 = lv_barcode_create(ui->screen_1);
//设置条形码尺寸
lv_obj_set_height(ui->screen_1_barcode_1, 50);
//设置缩放比例为1
lv_barcode_set_scale(ui->screen_1_barcode_1, 1);
//设置深色条颜色
lv_barcode_set_dark_color(ui->screen_1_barcode_1, lv_color_hex(0x2C3224));
//设置浅色背景色
lv_barcode_set_light_color(ui->screen_1_barcode_1, lv_color_hex(0xffffff));
//更新条形码数据并显示
const char * screen_1_barcode_1_data = "www.baidu.com";
lv_barcode_update(ui->screen_1_barcode_1, screen_1_barcode_1_data);
//确认位置和高度
lv_obj_set_pos(ui->screen_1_barcode_1, 136, 208);
lv_obj_set_height(ui->screen_1_barcode_1, 50);
本文章由威三学社出品
对课程感兴趣可以私信联系