接口如下
/*----------------------------------------------------------------------------------------------------------------------*/
// LVGL常用接口笔记
// 一些关于对象的操作接口:基本都是lv+对象类型+操作,
// 除创建对象接口外指针,返回值基本都是void
// 声明一个图像变量(用于c数组)
LV_IMAGE_DECLARE(img_cogwheel_argb);
lv_obj_t * screen = lv_screen_active(); // 创建活跃屏幕对象(无父对象)
lv_obj_t * obj = lv_obj_create(screen); // 在屏幕上创建一个对象
lv_obj_t * btn = lv_button_create(lv_screen_active()); // 创建按钮对象
lv_obj_t * label = lv_label_create(btn); // 创建标签对象
lv_obj_t * img1 = lv_image_create(lv_screen_active()); // 创建图形对象
lv_obj_t * bar1 = lv_bar_create(lv_screen_active()); // 创建进度条对象
lv_obj_t * slider = lv_slider_create(lv_screen_active()); // 创建滑块对象
lv_obj_t * pwd_ta = lv_textarea_create(lv_screen_active()); // 创建文本输入框对象
lv_obj_t * kb = lv_keyboard_create(lv_screen_active()); // 创建一个键盘
lv_obj_t * mbox1 = lv_msgbox_create(NULL); // 创建消息框
lv_obj_t * tabview = lv_tabview_create(lv_screen_active()); // 创建表格试图
void lv_image_set_src(img1, 图像来源); // 设置图像源(3种途径,c数组(png),"A:./photo/11.bmp",带有symbols)
void lv_image_set_src(img1, LV_SYMBOL_AUDIO); // 带有symbols的图像来源
lv_event_code_t code = lv_event_get_code(e); // 在回调函数void button_cb(lv_event_t * e)中获取事件号
void * obj = lv_event_get_target(e); // 在回调函数void button_cb(lv_event_t * e)获取当前触发事件的对象
lv_obj_t * label = lv_event_get_user_data(e);// 获取用户传过来的标签或传消息框等其他(这样就可以不用设置全局变量了)
lv_obj_t * child = lv_obj_get_child(父对象, 父的孩子对象); // 返回孩子的指针
lv_obj_t * parent = lv_obj_get_parent(对象); // 获取当前父亲对象
char * text = lv_label_get_text(label); // 获取标签文本的信息
int value = lv_slider_get_value(slider); // 获取滑块的当前值
char * textarea = lv_textarea_get_text(textarea); // 获取输入文本框内容
lv_obj_t * tab1 = lv_tabview_add_tab(tabview, "粉面"); // 添加表格选项
lv_obj_t * tab2 = lv_tabview_add_tab(tabview, "汤粉"); // 添加表格选项
void lv_screen_load(屏幕的指针); // 加载活跃的屏幕对象
void lv_label_set_text(label, "标签上显示的内容");
void lv_label_set_text_fmt(label, 显示格式);
void lv_label_set_style_text_font(label, &lv_font_montserrat_24, 0);
void lv_image_set_scale(img, 256为一倍); // 设置图片大小(缩放效果)
void lv_image_set_rotation(img, 角度(0 - 3600)); // 旋转角度0-360°
void lv_bar_set_value(bar1, new_value, LV_ANIM_ON / OFF); // 设置进度条的值
void lv_bar_set_range(bar1, min, max); // 设置进度条范围
void lv_slider_set_value(slider, new_value, LV_ANIM_ON / OFF); // 设置滑块当前
void lv_slider_set_range(slider, min, max); // 设置滑块范围
void lv_textarea_add_char(pwd_ta, 'c'); // 文本输入框中添加一个字符
void lv_textarea_add_text(pwd_ta, "insert this text"); // 文本输入框中添加字符串
void lv_textarea_set_placeholder_text(pwd_ta, "Password"); // 文本输入框中添加提示信息
void lv_textarea_set_one_line(pwd_ta, true); // 当行模式
void lv_textarea_set_password_mode(pwd_ta, true); // 密码模式
void lv_textarea_delete_char(pwd_ta); // 删除光标左侧的字符
void lv_keyboard_set_textarea(kb, pwd_ta); // 把键盘设置到文本输入框中
lv_msgbox_add_title(mbox1, "Hello"); // 给消息框添加标题
lv_msgbox_add_text(mbox1, "是否要删除"); // 添加提示信息
lv_msgbox_add_close_button(mbox1); // 添加关闭按钮
btn = lv_msgbox_add_footer_button(mbox1, "Apply"); // 添加应用按钮
btn = lv_msgbox_add_footer_button(mbox1, "Cancel"); // 添加取消按钮
void lv_tabview_set_tab_bar_position(tabview, LV_DIR_LEFT); // 设置表格试图的位置
void lv_tabview_set_tab_bar_size(tabview, 80); // 设置选框的大小
void lv_screen_load_anim(screen, 动画类型, 动画时间(us级), 延时切换,
bool auto_del); // 动画加载屏幕,最后一个参数是自动删除旧屏幕
void lv_obj_delete(obj); // 删除对象
void lv_obj_center(obj); // 快速将对象放到中间
void lv_obj_set_width(label, 150) // 设置标签文本的宽
void lv_obj_set_style_text_align(lable, LV_ALIGN_CENTER, 0); // 设置文本的对齐规则
void lv_obj_set_size(obj, 800, 480); // 设置对象长宽(大小)
void lv_obj_set_pos(对象, x, y); // 设置对象位置
void lv_obj_align(obj, LV_ALIGN_BOTTOM_MID, 0, 0);
void lv_obj_align_to(需设置的对象, 参考位置, LV_ALIGN_BOTTOM_MID, 0, 0);
void lv_obj_set_parent(对象, 新父对象);
int lv_obj_get_child_count(父对象); // 获取当前孩子数
void lv_obj_move_foreground(对象); // 将一个对象置于前景
void lv_obj_move_background(对象); // 将一个对象移动到背景
void lv_obj_move_to_index(对象,图层位置); // 将一个对象移动到子对象顺序的第几层
void lv_obj_swap(对象1, 对象2); // 交换两个对象的相对图层位置
void lv_obj_add_flag(img, LV_OBJ_FLAG_CLICKABLE); // 给图片添加flag标志使其具有点击功能
void lv_obj_add_flag(kb, LV_OBJ_FLAG_HIDDEN); // 给键盘添加隐藏事件
void lv_obj_remove_flag(kb, LV_OBJ_FLAG_HIDDEN); // 显示键盘
void lv_obj_set_style_bg_color(tabview, lv_palette_lighten(LV_PALETTE_RED, 2), 0);
// lvgl的核心事件(每个对象每时每刻都发生着各种各样的事件)
// 所以用户可以把自己需要的事件注册一个回调函数,当事件触发时,则执行该函数
lv_obj_add_event_cb(btn, 回调函数, 事件类型, 传递给事件的参数(一般为NULL)); // 给按钮对象添加回调函数
// 注册焦点事件
lv_obj_add_event_cb(pwd_ta, keyboard_show, LV_EVENT_FOCUSED, kb);
lv_obj_add_event_cb(pwd_ta, keyboard_hide, LV_EVENT_DEFOCUSED, kb);
/*----------------------------------------------------------------------------------------------------------------------*/
至此,希望看完这篇文章的你有所收获,我是Bardb,译音八分贝,道友,下期见!