LVGL——标签部件

本文详细介绍了LVGL库中标签组件的构成、创建方法、文本设置(包括动态和静态文本、格式化)、文本样式调整以及如何处理文本过长情况,以代码案例的形式展示了具体应用。
摘要由CSDN通过智能技术生成

目录

一、标签部分组成

二、创建标签部件

三、设置文本

四、改变文本样式

五、文本过长处理

 六、代码案例


一、标签部分组成

主体(LV_PART_MAIN

滚动条(LV_PART_SCROLLBAR

选中的文本(LV_PART_SELECTED

二、创建标签部件

lv_obj_t   *label  = lv_label_create(parent);

三、设置文本

① 直接设置文本,存储文本的内存动态分配 :lv_label_set_text( label, "hallo \n lvgl");

② 文本不存储在动态内存,而是在指定的缓冲区中(慎用):lv_label_set_text_static( label,"hallo" );

③ 格式化显示文本,类似printf lv_label_set_text_fmt( label, “Value: %d”, 50 ) ;

四、改变文本样式

① 背景颜色:lv_obj_set_style_bg_color( label, lv_color_hex(0xffe1d4), LV_STATE_DEFAULT );

② 字体大小:lv_obj_set_style_text_font( label, &lv_font_montserrat_30, LV_STATE_DEFAULT );

③ 文本颜色:lv_obj_set_style_text_color( label, lv_color_hex(0xf7b37b), LV_STATE_DEFAULT );

五、文本过长处理

lv_label_set_long_mode(label, LV_LABEL_LONG_...);
enum {
    LV_LABEL_LONG_WRAP,             		/* 默认模式, 如果部件大小已固定,超出的文本将被剪切 */
    LV_LABEL_LONG_DOT,              		/* 将 label 右下角的最后 3 个字符替换为点… */
    LV_LABEL_LONG_SCROLL,           		/* 来回滚动 */
    LV_LABEL_LONG_SCROLL_CIRCULAR,  	/* 循环滚动 */
    LV_LABEL_LONG_CLIP,             		/* 直接剪切掉部件外面的文本部分 */
};

 六、代码案例

void my_gui(void)
{
    lv_obj_t *label = lv_label_create(lv_scr_act());

    lv_label_set_text_fmt(label,"menglingjun:%d",21);
    lv_obj_set_size(label,160,40);
    lv_label_set_long_mode(label,LV_LABEL_LONG_SCROLL_CIRCULAR);

    lv_obj_set_style_bg_color(label,lv_color_hex(0xffe1d4),LV_STATE_DEFAULT);
    lv_obj_set_style_bg_opa(label,100,LV_STATE_DEFAULT);
    lv_obj_set_style_text_font( label, &lv_font_montserrat_30, LV_STATE_DEFAULT );
    lv_obj_set_style_text_color( label, lv_color_hex(0xf7b37b), LV_STATE_DEFAULT );

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

琪琪猫不会嵌入式

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值