LVGL部件使用(学习笔记)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
一、LVGL编程思想
1.面向对象,以抽象类实例化不同的部件
2.c语言没有类的概念,所以LVGL使用结构体实现类的思维
二、基础对象
基础对象(v_obj)可以作为父对象,来创建其他对象,同时它也可作为部件使用。
子对象在父对象的左上角

``
小例程:
#include"lvgl.h"
#include"my_gui.h"
void my_gui (void)
{
lv_obj_t *obj1 = lv obj create(lv_scr_act ());
1v_obj set_size (obj1, 300, 400) ;
}
三、部件基本属性
1.大小(size)
设置宽度:Iv_obj_set_width(obj, new_width);
设置高度:Iv_obj_set_height(obj, new_height);
同时设置宽度、高度:Iv_obj_set_size(obj,new_width, new_height);
#include "lvgl.h"#include "my gui.h"
void my_gui (void)
{
lv objt *objl = lv obj create(lv scr act0);
lv_obj_set_width (objl, 200);
lv_obj_set_height (objl, 300);
lv_obj_set_size (objl, 200, 300);
}
2.位置(position)

设置X轴坐标:Iv_obj_set_x(obj,new_x);
设置Y轴坐标:Iv_obj_set_y(obj, new_y);
同时设置X、Y轴坐标:Iv_obj_set_pos(obj,new_x,new_y);
#include "lvgl.h"#include "my gui.h"
void my_gui (void)
{
lv_obj_t *obj1 = lv_obj_create (lv_scr_act ());
lv_objset_x(obj1,100);
lv_objset_y (obj1,200);
lv_obj_set_pos (obj1, 200,200) ;
}
3.对齐 (alignment)
(1).参照父对象对齐
lv_obj_set_align(obj, LV_ALIGN_…);
参照父对象对齐,再进行偏移:
lv_obj_align(obj, LV_ALIGN_…, x, y);
#include "lvgl.h"
#include "my_gui.h"
void my_gui(void)
{
lv_obj_t *obj1 = lv_obj_create(lv_scr_act());
lv_obj_set_align(obj1, LV_ALIGN_CENTER);
}
(2).参照其他对象对齐(无父子关系),再进行偏移:
lv_obj_align_to(obj_to_align, obj_referece, LV_ALIGN_…, x, y);
#include "lvgl.h"
#include "my_gui.h"
void my_gui(void)
{
lv_obj_t *obj1 = lv_obj_create(lv_scr_act());
lv_obj_set_size(obj1, 300, 300);
// lv_obj_set_align(obj1, LV_ALIGN_RIGHT_MID);
// lv_obj_align(obj1, LV_ALIGN_BOTTOM_MID, 50, 50);
lv_obj_t *obj2 = lv_obj_create(lv_scr_act());
lv_obj_align_to(obj2, obj1, LV_ALIGN_OUT_RIGHT_MID, 0, 0);//外部居中对齐
}

4.样式(styles)
5.事件(events)
6.布局管理
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。
更多推荐

所有评论(0)