LVGL手册官网
基本对象
概览
基本对象是显示空间的基本属性。基本对象有:
- 坐标
- 父对象,子对象
- 屏幕对象
- 图层
- 样式
- 事件
- 属性
- 透明度
- 保护
- 群组
- 扩展点击区域
坐标
- 设置宽度
lv_obj_set_width(obj, new_width)
功能:设置宽度
参数:
obj 目标对象
new_width 宽度
- 设置高度
lv_obj_set_height(obj, new_height)
功能:设置宽度
参数:
obj 目标对象
new_height 高度
- 设置宽度,高度
lv_obj_set_size(obj, new_width, new_height)
功能:设置宽度
参数:
obj 目标对象
new_width 宽度
new_height 高度
- 设置坐标x
lv_obj_set_x(obj, new_x)
- 设置坐标y
lv_obj_set_y(obj, new_y)
- 设置坐标x,y
lv_obj_set_pos(obj, new_x, new_y)
- 对象对齐(坐上角定点)
lv_obj_align(obj, obj_ref, LV_ALIGN_..., x_shift, y_shift)
功能:对象对齐
参数:
obj 操作对象
obj_ref 参考对象,为 NULL 时,将对齐父对象。
LV_ALIGN_... 对齐类型
x_shift 对齐之后x轴偏移像素点
y_shift 对齐之后y轴偏移像素点
- 对象对齐(中心点)
lv_obj_align_origo(obj, obj_ref, LV_ALIGN_..., x_shift, y_shift)
用法与 lv_obj_align 相同,区别是 lv_obj_align 对齐左上角顶点, lv_obj_align_origo 对齐中心点。
- 快速对齐
lv_obj_realign(obj)
如果 LV_USE_OBJ_REALIGN
使能,则对齐类型会被存储,可以直接调用lv_obj_realign(obj)
快速对齐。等同于lv_obj_align
。
- 自动对齐
lv_obj_set_auto_realign(obj, true)
当对象重新设置尺寸时,可以保持对象对齐。
父对象,子对象
- 设置父对象
lv_obj_set_parent(obj, new_parent)
- 获取父对象
lv_obj_get_parent(obj)
- 获取子对象
lv_obj_get_child(obj, child_prev)
从前往后获取父对象 obj 的子对象 child_prev 后的一个子对象。
lv_obj_get_child_back(obj, child_prev)
从后往前获取父对象 obj 的子对象 child_prev 后的一个子对象。
当第二个参数为 NULL 时,获取父对象 obj 第一个子对象。
遍历子对象demo
lv_obj_t * child;
child = lv_obj_get_child(parent, NULL);
while(child) {
/*使用"子对象" 做一些事情*/
child = lv_obj_get_child(parent, child);
}
- 获取子对象数
lv_obj_count_children(obj)
- 获取子对象数(含子对象的子对象数量)
lv_obj_count_children_recursive(obj)