LCGL使用简介
LVGC简介
https://lvgl.100ask.net/master/details/base-widget/styles/style.html
light video Graphics Library
(1)纯c与语言编程,将面向对象的思想植入c语言。
(2)轻量化图形库资源,人机交互效果好,在(ios Android QT)移植性较好,但是这些平台对硬件要求较高
lcgc工程搭建
- 工程源码的获取
获取工程结构
https://github.com/lvgl/lv_port_pc_vscode/tree/master
获取lvgl组件库
https://github.com/lvgl/lvgl/tree/db62f65c22811acf36b9b83da0228d7389317283
将工程架构压缩包装包解压到Linux下,解压LCGL到工程的lvgl文件夹下
- 根据README进行操作
- 工程的编译
编程思想
使用面向对象操作,由于c语言中没有类的盖面,用结构体代替
lvgl中examples文件的解释
anim:存放与动画(Animation)相关的示例
arduino:针对 Arduino 平台的示例
assest:资源
event:事件(Event)相关示例,像按钮点击、滑动等事件的监听、处理逻辑
get_started:入门示例,适合刚接触 LVGL 的开发者,包含最基础的初始化、简单控件创建等代码,帮用户快速搭建起基本使用框架 。
grad:渐变(Gradient)相关示例,比如颜色渐变效果在控件(如按钮、窗口背景等)
layouts:布局(Layout)示例,介绍 LVGL 各种布局管理方式,像行列布局、对齐方式等,让界面元素能合理排列
libs:可能存放一些辅助库、第三方依赖库相关的示例,或者是 LVGL 自身基础库功能的演示
others:其他杂项示例
porting:移植相关示例
scroll:滚动(Scroll)相关示例
styles:样式(Style)示例
widgets:控件(Widgets,如按钮、标签、滑块等 )示例,每个常用控件的创建、配置、交互逻辑等