lvgl8.2.0版本设置label标签循环滚动
时间: 2023-12-08 13:04:09 浏览: 269
在LVGL8.2.0版本中,可以通过设置 `LV_LABEL_FLAG_SCROLL_CIRCULAR` 标志来实现循环滚动。可以按照以下步骤进行设置:
1. 创建一个 `lv_label` 对象:
```c
lv_obj_t *label = lv_label_create(lv_scr_act(), NULL);
```
2. 设置标签文本并启用循环滚动标志:
```c
lv_label_set_text(label, "Hello, World!");
lv_obj_add_flag(label, LV_LABEL_FLAG_SCROLL_CIRCULAR);
```
3. 设置标签滚动速度:
```c
lv_label_set_long_mode(label, LV_LABEL_LONG_SCROLL_CIRCULAR);
lv_label_set_anim_speed(label, 25);
```
4. 开始滚动:
```c
lv_anim_t a;
lv_anim_init(&a);
lv_anim_set_var(&a, label);
lv_anim_set_exec_cb(&a, (lv_anim_exec_xcb_t)lv_label_set_offset_y);
lv_anim_set_values(&a, 0, lv_obj_get_height(label) / 2);
lv_anim_set_time(&a, 5000);
lv_anim_set_repeat_count(&a, LV_ANIM_REPEAT_INFINITE);
lv_anim_start(&a);
```
以上步骤会让标签以循环滚动的方式滚动,滚动速度为每秒25个像素。你可以根据需要调整滚动速度和其他参数。
阅读全文