lvgl 笔记 标签部件 (lv_label)

这篇具有很好参考价值的文章主要介绍了lvgl 笔记 标签部件 (lv_label)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

基础使用方法:

最基础的用法只需要两行代码,分别创建和配置即可: 

lv_obj_t* label = lv_label_create(lv_scr_act());
lv_label_set_text(label, "label");

lvgl label,硬件,# lvgl,物联网,嵌入式硬件

配置字体背景颜色:

配置字体背景色使用 lv_obj_set_style_bg_color() 即可,但要顺便使用 lv_obj_set_style_bg_opa() 配置透明度,因为默认透明度是100%,这样将不会显示背景色。

lv_obj_t* label = lv_label_create(lv_scr_act());
lv_label_set_text(label, "label");
lv_obj_set_style_bg_color(label, lv_color_hex(0xff00000), LV_STATE_DEFAULT);
lv_obj_set_style_bg_opa(label, 100, LV_STATE_DEFAULT);

 lvgl label,硬件,# lvgl,物联网,嵌入式硬件

配置字体颜色:

lv_obj_set_style_text_color() 可以配置文字颜色。

lv_obj_t* label = lv_label_create(lv_scr_act());
lv_label_set_text(label, "label");
lv_obj_set_style_text_color(label, lv_color_hex(0xdf5345), LV_STATE_DEFAULT);

lvgl label,硬件,# lvgl,物联网,嵌入式硬件

配置部分字体颜色:

lv_label_set_recolor() 函数可以开启部分设置字体功能,在设置字体中设置  #ff0000 lvgl# 即可配置部分字体颜色。

lv_obj_t* label = lv_label_create(lv_scr_act());
lv_label_set_recolor(label, true);
lv_label_set_text(label, "label #ff0000 lvgl#");

lvgl label,硬件,# lvgl,物联网,嵌入式硬件

配置字体大小:

使用 lv_obj_set_style_text_font() 可以配置字体大小。

lv_obj_t* label = lv_label_create(lv_scr_act());
lv_label_set_text(label, "label");
lv_obj_set_style_text_font(label, &lv_font_montserrat_48, LV_STATE_DEFAULT);

 lvgl label,硬件,# lvgl,物联网,嵌入式硬件

当文本超过部件大小:

在这里,使用 lv_obj_set_size() 将宽高设置为 100,50。很显然是不足够显示下面这行文本的。

使用 lv_label_set_long_mode() 可以配置文本超过部件大小模式。

lv_obj_t* label = lv_label_create(lv_scr_act());
lv_obj_set_size(label, 100, 50);
lv_label_set_text(label, "THE UNANIMOUS DECLARATION OF THE THIRTEEN UNITED STATES OF AMERICA");
lv_label_set_long_mode(label, LV_LABEL_LONG_SCROLL);

共有以下配置可以选择: 

lvgl label,硬件,# lvgl,物联网,嵌入式硬件

综合案例: 

/* 获取当前活动屏幕的宽高 */
#define scr_act_width() lv_obj_get_width(lv_scr_act())
#define scr_act_height() lv_obj_get_height(lv_scr_act())

static const lv_font_t *font;


    lv_obj_t* label = lv_label_create(lv_scr_act());                                /* 定义并创建标签 */
    lv_label_set_text_fmt(label, "Label can set text like %s", "printf");           /* 设置标签文本 */
    lv_obj_set_width(label, scr_act_width() / 3);                                   /* 设置标签宽度 */
    lv_obj_align(label, LV_ALIGN_CENTER, scr_act_width() / 3, 0);                   /* 设置标签位置 */
    lv_obj_set_style_text_align(label, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN);         /* 设置标签文本对齐方式 */

    lv_obj_t* label_shadow = lv_label_create(lv_scr_act());                         /* 定义并创建阴影标签 */
    lv_label_set_text(label_shadow, lv_label_get_text(label));                      /* 设置标签文本 */
    lv_obj_set_width(label_shadow, scr_act_width() / 3);                            /* 设置标签宽度 */
    lv_obj_set_style_text_opa(label_shadow, LV_OPA_30, LV_PART_MAIN);               /* 设置标签文本透明度 */
    lv_obj_set_style_text_color(label_shadow, lv_color_black(), LV_PART_MAIN);      /* 设置标签文本颜色 */
    lv_obj_set_style_text_align(label_shadow, LV_TEXT_ALIGN_CENTER, LV_PART_MAIN);  /* 设置标签文本对齐方式 */
    lv_obj_align_to(label_shadow, label, LV_ALIGN_TOP_LEFT, 3, 3);                  /* 设置标签位置 */

lvgl label,硬件,# lvgl,物联网,嵌入式硬件文章来源地址https://www.toymoban.com/news/detail-727387.html

到了这里,关于lvgl 笔记 标签部件 (lv_label)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • lvgl lv_indev_t (一)之 _lv_indev_drv_t 解读

    输入设备驱动句柄,由lv_indev_add()接口注册 lv_indev_type_t type 输入设备类型 *read_cb 获取输入设备数据回调接口 这个回调在输入设备定时任务中周期调用,用来获取输入设备的状态和数据 *feedback_cb 反馈回调接口 这个回调在输入设备有动作时触发事件发送时调用,反馈事件信息

    2024年02月08日
    浏览(35)
  • LVGL源码分析(1):lv_ll链表的实现

    在LVGL中难免需要用到链表:group中的对象需要用链表来存储,这样可以切换对象的焦点;再比如LVGL内部的定时器,多个定时器也是用链表进行存储的。这篇文章就来分析一下LVGL中链表的源码。 对于链表来说,肯定有一个头指针和一个尾指针,在LVGL中,链表的数据结构如下:

    2024年02月13日
    浏览(36)
  • LVGL core group焦点分组管理(lv_group.c)

    更多源码分析请访问: LVGL 源码分析大全

    2024年02月09日
    浏览(35)
  • LVGL misc area 方块区域通用函数(lv_area.c)

    更多源码分析请访问: LVGL 源码分析大全

    2024年02月07日
    浏览(30)
  • RustGUI学习(iced)之小部件(一):如何使用按钮和文本标签部件

    前言 本专栏是学习Rust的GUI库iced的合集,将介绍iced涉及的各个小部件分别介绍,最后会汇总为一个总的程序。 iced是RustGUI中比较强大的一个,目前处于发展中(即版本可能会改变),本专栏基于版本0.12.1. 概述 这是本专栏的第一篇,主要讲述按钮(button)和文本标签(text)

    2024年04月25日
    浏览(25)
  • matplotlib中的label标签

    plt中的label参数,其实可以理解为,我们往图形中要加入的图例, 通过plt.legend()的方法将其显示在图中。

    2024年02月12日
    浏览(31)
  • HTML <label> 标签

    带有两个输入字段和相关标记的简单 HTML 表单: 元素 Chrome IE Firefox Safari Opera label Yes Yes Yes Yes Yes 所有主流浏览器都支持 label 标签。 Safari 2 或更早的版本不支持 label 标签。 label 标签为 input 元素定义标注(标记)。 label 元素不会向用户呈现任何特殊效果。不过,它为鼠标用

    2024年02月12日
    浏览(37)
  • 【HTML】label 标签

    在HTML中, label 标签用于为表单元素创建标签文本或标题。它可以与输入字段(如文本框、单选按钮、复选框等)和其他表单元素关联起来,以提高可用性和可访问性。 label 元素有两种常见的用法: 包裹方式: 在这个示例中, label 标签将文本 “用户名:” 与一个文本输入

    2024年02月14日
    浏览(27)
  • 标签平滑(Label Smoothing)详解

    标签平滑(Label smoothing),像L1、L2和dropout一样,是机器学习领域的一种正则化方法,通常用于分类问题,目的是防止模型在训练时过于自信地预测标签,改善泛化能力差的问题。 Label smoothing将hard label转变成soft label,使网络优化更加平滑。标签平滑是用于深度神经网络(D

    2024年01月23日
    浏览(40)
  • HTML的label标签有什么用?

    当你想要将表单元素(如输入框、复选框、单选按钮等)与其描述文本关联起来,以便提供更好的用户界面和可访问性时,就可以使用HTML中的 label 标签。 label 标签用于为表单元素提供标签或标识,使用户能够更清楚地了解每个表单元素的用途。 label 标签的作用有两个主要方

    2024年02月11日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包