一.加载部件
1.知识概览
2.函数接口
1.lv_obj_set_style_arc_color
lv_obj_set_style_arc_color
是 LittlevGL(LVGL)图形库中的一个函数,用于设置对象的圆弧颜色样式。函数原型为:
void lv_obj_set_style_arc_color(lv_obj_t * obj, lv_color_t color)
。这个函数的作用是设置指定对象(
lv_obj_t
类型)的圆弧(arc)颜色样式。圆弧颜色样式是指对象中绘制的圆形或弧线的颜色。通过使用
lv_obj_set_style_arc_color
函数,可以更改对象中圆弧的颜色。参数
color
是一个lv_color_t
类型的参数,用于指定要设置的圆弧颜色。可以使用 LVGL
提供的颜色宏或自定义颜色来设置圆弧颜色。通过调整圆弧颜色,可以使对象的外观与应用程序的需求和风格相匹配。
2.lv_spinner_create
lv_spinner_create
是 LittlevGL(LVGL)图形库中的一个函数,用于创建一个旋转进度条(Spinner)对象。函数原型为:`lv_obj_t * lv_spinner_create(lv_obj_t * parent, const lv_obj_t
- copy)`。
这个函数用于创建一个新的旋转进度条对象,并通过返回一个
lv_obj_t
类型的指针来引用该对象。
parent
参数是指定父对象的指针,即新创建的旋转进度条对象将作为父对象的子元素显示。如果将其设置为
NULL
,则表示将该对象添加到屏幕上。
copy
参数是一个可选参数,可以指定一个现有的旋转进度条对象作为模板来复制创建新对象的属性和样式。旋转进度条是一种可视化的指示器,用于表示某个任务的进行。它通常由一个中心点和旋转的圆弧组成,动画效果可以通过设置其样式和属性进行自定义。
3.代码实例
void my_lvgl(void)
{
//创建一个加载部件,旋转一周为1s,设置指示器的长度为60
lv_obj_t *spinner = lv_spinner_create(lv_scr_act(),1000,60);
lv_obj_set_style_arc_color(spinner,lv_color_hex(0x4a9f00),LV_PART_MAIN); //设置主体圆弧颜色
lv_obj_set_style_arc_color(spinner,lv_color_hex(0x83bd55),LV_PART_INDICATOR); //设置指示器圆弧颜色
lv_obj_set_style_arc_width(spinner,10,LV_PART_MAIN); //设置主体圆弧宽度
lv_obj_set_style_arc_width(spinner,25,LV_PART_INDICATOR); //设置指示器圆弧宽度
}
二.LED部件
1.知识概览
2.函数接口
1.lv_obj_add_event_cb
lv_obj_add_event_cb
是 LittlevGL(LVGL)图形库中的一个函数,用于为对象添加事件回调函数。
函数原型为:void lv_obj_add_event_cb(lv_obj_t * obj, lv_event_t event, lv_event_cb_t event_cb, void * user_data)
。
这个函数用于将一个特定的事件(event
参数)与指定对象(obj
参数)关联,并在事件发生时调用相应的回调函数(event_cb
参数)。
event
参数是要关联的事件,它是 lv_event_t
枚举类型的值之一。常见的事件类型包括 LV_EVENT_CLICKED
(点击事件)、LV_EVENT_VALUE_CHANGED
(数值变化事件)等。
event_cb
参数是一个回调函数,用于处理对象上对应事件的逻辑。当对象上发生指定的事件时,将调用该回调函数。回调函数的原型通常为 void event_cb(lv_obj_t * obj, lv_event_t event)
,可以根据需要自定义其实现。
user_data
参数是一个指向用户自定义数据的指针,可以在事件回调函数中使用。
通过使用 lv_obj_add_event_cb
函数,可以为对象添加事件回调函数,以实现对指定事件的处理逻辑。
2.lv_led_toggle
lv_led_toggle
是 LittlevGL(LVGL)图形库中的一个函数,用于切换指示灯(LED)对象的状态。函数原型为:
void lv_led_toggle(lv_obj_t * led)
。这个函数用于改变指示灯对象的状态,即在“开”和“关”状态之间进行切换。
led
参数是一个指向指示灯对象的指针(lv_obj_t
类型),表示要切换状态的指示灯。指示灯对象通常是简单的图形元素,用于表示设备或系统的运行状态。它可以在打开状态和关闭状态之间切换,从而提供可视化的反馈。
使用
lv_led_toggle
函数可以方便地切换指示灯对象的状态。
3.代码示例
static void event_led(lv_event_t *e)
{
lv_obj_t *led = lv_event_get_target(e); //获取触发源
lv_led_toggle(led); //反转
}
void my_lvgl(void)
{
lv_obj_t *led = lv_led_create(lv_scr_act()); //创建一个LED部件
lv_obj_set_size(led,100,100); //设置大小
lv_obj_center(led); //设置中心对齐(快速)
//lv_led_set_color(led,lv_color_hex(0xff0000)); //设置LED部件颜色
lv_led_set_brightness(led,155); //设置LED亮度
lv_led_on(led); //255
lv_led_off(led); //0
lv_led_toggle(led); //反转
lv_obj_add_event_cb(led,event_led,LV_EVENT_CLICKED,NULL); //点击产生事件
}