把LVGL所有控件整合到一个工程中展示(LVGL6.0版本)

最近接触到LVGL,感觉挺好用的,适用于资源相对较小的开发板,使用起来也挺简单方便的。做了个demo,把LVGL的大部分控件用一个工程显示出来。
由于时间有限,没有对控件的样式进行设计,绝大部分都是使用的默认样式。本人也是初学者,例程中有不对的地方,大家多多包涵。

注意:
使用的是LGVL6.0版本,一开始从正点原子接触到这个,后来发现现在的LVGL都更新到8.3了,又重新跟着百问网学习了新版本。
第二个界面中,用ddlist选中要演示的控件后,按ok键才能切换
在scale中,为了显示LVGL的任务系统,回调函数中的业务逻辑没有写好,要等控件动画演示完毕再切换,否则程序会卡死
我把其中的功能类型相似的控件进行分类显示,(比如lv_arc和lv_line都属于画线类型,lv_sw、lv_cb都属于开关类型)所以一个例程中可能会显示好几个控件;
时间有限,好多地方都没有优化改进,大家多多包涵。
下面图片有PC端模拟器的图片也有开发板实验的图片,开发板是正点原子的探索者STM32F407。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
MDK工程文件:
链接:https://pan.baidu.com/s/1sYjnG7hY9G4Vd1w_mradKQ
提取码:8fph
PC端工程文件:
链接:https://pan.baidu.com/s/1TS2rBm0x0KxIn-YYQ0UjNg
提取码:fykf

LVGL(LittlevGL)这个嵌入式图形库,List 控件添加提示通常涉及到修改它的样式和显示状态。LVGL 提供了丰富的样式选项来定制列表的行为。以下是基本步骤: 1. **包含所需头文件**: 首先,你需要在你的代码包含`lv_style.h` 和 `lv_list.h` 文件,这两个头文件分别包含了样式和列表相关的定义。 ```c #include "lv_style.h" #include "lv_list.h" ``` 2. **创建样式**: 创建一个新的列表样式,并设置一个属性来控制提示文本的显示。例如,你可以设置`style_ptr->item.dot` 或 `style_ptr->body.textColor` 来改变列表项的字体颜色,使其作为提示。 ```c LV_STYLEHEET style = lv_style_create(); if (style) { lv_style_set_text_color(style, LV_COLOR_GRAY); // 设置提示文本颜色为灰色 lv_obj_set_style(lv_list_get_default_style(), style); } ``` 3. **动态添加提示**: 如果你想在特定条件下显示提示,比如空列表、鼠标悬停或点击时,可以自定义`lv_event_cb_t`函数来处理事件。在回调检查条件并动态更新列表项的内容。 ```c void list_event_handler(lv_obj* obj, lv_event_t event) { if (event == LV_EVENT_ITEM_GET_EDITABLE) { if (!lv_list_is_editable(list)) { // 检查是否可编辑 // 添加提示,如为空列表,你可以在这里设置一个字符串 const char* hint = "请输入内容"; lv_list_add_item_text(obj, hint, NULL); // 更新列表项 } } } lv_obj* list = lv_list_create(screen, NULL); // 创建list对象 lv_obj_set_event_cb(list, list_event_handler); // 设置事件处理器 ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值