LVGL常用函数总结

LVGL

基础对象

对象

基础对象,衍生出其他空间

1 子对象会随着父对象移动

2 子对象超出父对象范围不显示

lv_obj_t * obj = lv_obj_create(lv_scr_act());

大小

 lv_obj_set_size(obj, LV_PCT(40), LV_PCT(20));

位置

    lv_obj_set_x(obj, 200);
    lv_obj_set_y(obj, -50);
// 或
    lv_obj_set_pos(obj, 1300, 600);

//参照父对象对齐
lv_obj_set_align(obj, LV_ALIGN_...);
//参照父对象对齐后再设置坐标位置:
lv_obj_align(obj, LV_ALIGN_..., x, y);
//参照另一个对象(无父子关系)对齐后设置坐标位置:
lv_obj_align_to(obj_to_align, obj_referece, LV_ALIGN_..., x, y);

img

lv_obj_get_x(obj);
lv_obj_get_y(obj);

样式

// 普通样式
    static lv_style_t style;                         // 创建样式
    lv_style_init(&style);                          //初始化样式内存
    lv_style_set_bg_color(&style,lv_color_hex(0xfb183)); //设置样式
    lv_obj_add_style(obj1,&style,LV_STATE_DEFAULT);     // 将样式添加到组件

// 本地样式
    lv_obj_set_style_bg_color(obj1,lv_color_hex(0xfb183),LV_STATE_DEFAULT);

// 样式生效枚举
enum {

    LV_STATE_DEFAULT      =  0x0000,   /* 默认状态 */
    LV_STATE_CHECKED      =  0x0001,   /* 切换或选中状态 */
    LV_STATE_FOCUSED      =  0x0002,   /* 通过键盘、编码器聚焦或通过触摸板、鼠标单击 */
    LV_STATE_FOCUS_KEY    =  0x0004,   /* 通过键盘、编码器聚焦 */
    LV_STATE_EDITED       =  0x0008,   /* 由编码器编辑 */
    LV_STATE_HOVERED      =  0x0010,   /* 鼠标悬停(现在不支持)*/
    LV_STATE_PRESSED      =  0x0020,   /* 已按下 */
    LV_STATE_SCROLLED     =  0x0040,   /* 滚动状态 */
    LV_STATE_DISABLED     =  0x0080,   /* 禁用状态 */
    …
};

边框 border

boder

// 设置border 颜色
lv_obj_set_style_border_color(obj1,lv_color_hex(0x000000),LV_STATE_DEFAULT);
// 设置boder宽度   
lv_obj_set_style_border_width(obj1,10,LV_STATE_DEFAULT);
// boder透明度
lv_obj_set_style_border_opa(obj1,50,LV_STATE_DEFAULT);

轮廓 outline

outline 设置方法和boder基本一致

// 设置颜色
lv_obj_set_style_outline_color(obj1,lv_color_hex(0x000000),LV_STATE_DEFAULT);
// 设置宽度   
lv_obj_set_style_outline_width(obj1,10,LV_STATE_DEFAULT);
// 透明度
lv_obj_set_style_outline_opa(obj1,50,LV_STATE_DEFAULT);

事件 event

// 为组件添加事件,
static void my_event_cb(lv_event_t * e)
{
    lv_event_code_t CODE =  lv_event_get_code(e);
    lv_obj_t *target = lv_event_get_target(e);
    if(target = obj1)
    {

        if(CODE == LV_EVENT_CLICKED)
        {
            printf("LV_EVENT_CLICKED\n");
        }else if(CODE == LV_EVENT_LONG_PRESSED)
        {
            printf("LV_EVENT_LONG_PRESSED\n");
        }
    }
}
// 添加点击松开触发事件
lv_obj_add_event_cb(obj1,my_event_cb,LV_EVENT_CLICKED,NULL);
// 添加长按事件
lv_obj_add_event_cb(obj1,my_event_cb,LV_EVENT_LONG_PRESSED,NULL);

标签

// 创建标签
lv_obj_t *label = lv_label_create(lv_scr_act());
// 设置文本
lv_label_set_text(label,"HELLO\n");       // 动态内存
lv_label_set_text_static(label,"HELLO\n");// 静态内存
lv_label_set_text_fmt(label,"Value %d",50);// 格式化显示
// 背景颜色
lv_obj_set_style_bg_color(label,lv_color_hex(0xff0000),LV_STATE_DEFAULT);
// 背景颜色默认透明,设置完成后还需要设置透明度(0-255)
lv_obj_set_style_bg_opa(label,100,LV_STATE_DEFAULT);
// 设置字体
lv_obj_set_style_text_font(label,&lv_font_montserrat_30,LV_STATE_DEFAULT);

// 设置部分字体颜色
// 打开字体颜色重设
lv_label_set_recolor(label,true);
// 在需要更改颜色的字体两边添加 #xxxxxxx 字体#
lv_label_set_text(label,"HELL#ff0000 O#");
enum {
    LV_LABEL_LONG_WRAP,               /* 默认模式, 如果部件大小已固定,超出的文本将被剪切 */
    LV_LABEL_LONG_DOT,                /* 将 label 右下角的最后 3 个字符替换为点… */
    LV_LABEL_LONG_SCROLL,             /* 来回滚动 */
    LV_LABEL_LONG_SCROLL_CIRCULAR,   /* 循环滚动 */
    LV_LABEL_LONG_CLIP,               /* 直接剪切掉部件外面的文本部分 */
};
//设置大小
lv_obj_set_size(label,100,50);
// 设置文本超出显示模式
lv_label_set_long_mode(label,LV_LABEL_LONG_DOT);

按钮

// 按钮事件 
static void event_cb(lv_event_t *e)
{
    // 获取事件触发的
    lv_event_code_t code = lv_event_get_code(e);
    //判断事件触发
    if(code == LV_EVENT_VALUE_CHANGED)
    {
        printf("LV_EVENT_VALUE_CHANGED");
    }
}

// 创建按钮
lv_obj_t *btn = lv_btn_create(lv_scr_act());
// 设置按钮大小
lv_obj_set_size(btn,100,50);
// 设置按钮位置
lv_obj_set_align(btn,LV_ALIGN_CENTER);
// 设置按钮被按时的颜色
lv_obj_set_style_bg_color(btn,lv_color_hex(0xffe1d4),LV_STATE_PRESSED);
// 设置按钮可以状态切换
lv_obj_add_flag( btn, LV_OBJ_FLAG_CHECKABLE );
// 为按钮添加事件
lv_obj_add_event_cb( btn, event_cb, LV_EVENT_VALUE_CHANGED,NULL );

开关

组成 :

主体 LV_PART_MAIN

手柄 LV_PART_KNOB

指示器 LV_PART_INDICATOR

//创建开关部件
lv_obj_t *switch1 = lv_switch_create(lv_scr_act());
// 设置手柄颜色
lv_obj_set_style_bg_color(switch1,lv_color_hex(0xffe1d4),LV_PART_KNOB);
// 设置指示器颜色  指示器颜色需要在LV_STATE_CHECKED时设置
lv_obj_set_style_bg_color(switch1,lv_color_hex(0x000000),LV_STATE_CHECKED|LV_PART_INDICATOR);

// 添加 清除开关状态
lv_obj_add_state(switch1,LV_STATE_CHECKED);
lv_obj_clear_state(switch1,LV_STATE_CHECKED);
// 添加清楚不可修改状态
lv_obj_add_state(switch1,LV_STATE_CHECKED | LV_STATE_DISABLED);
lv_obj_clear_state(switch1,LV_STATE_CHECKED | LV_STATE_DISABLED);
// 判断开关状态

lv_obj_t *switch1;
static void event_cb(lv_event_t *e)
{
    lv_event_code_t code = lv_event_get_code(e);
    if(code == LV_EVENT_VALUE_CHANGED)
    {
        // 判断开关状态
        if(lv_obj_has_state(switch1,LV_STATE_CHECKED))
        {
            printf("led_on\n");
        }else{
            printf("led_off\n");
        }
    }
}
lv_obj_add_event_cb(switch1,event_cb,LV_EVENT_VALUE_CHANGED,NULL);

复选框

主体 LV_PART_MAIN

勾选框 LV_PART_INDICATOR

// 创建部件
lv_obj_t *checkbox = lv_checkbox_create(lv_scr_act());
// 设置文本
lv_checkbox_set_text(checkbox,"CHECK ME!!");
// 设置复选框和文本间距离
lv_obj_set_style_pad_column(checkbox,20,LV_STATE_DEFAULT);

// 添加清除状态 判断状态和开关相同

进度条

主体(LV_PART_MAIN)

指示器(LV_PART_INDICATOR)

当进度条高度大于宽度时,其方向变为垂直

动画时间设置需要放在当前值设置之前 ,否则看不到动画效

动画时间指的是旧值刷新到新值的绘图时间,并不是现实中当前值变化所需的时间。

// 创建部件
lv_obj_t *bar = lv_bar_create(lv_scr_act());
// 设置部件大小
lv_obj_set_size(bar,400,20);
//设置部件当前值(包括是否开启动画
lv_bar_set_value(bar,50,LV_ANIM_ON);
// 设置部件取值范围
lv_bar_set_range(bar,-100,100);
// 设置动画的速度
lv_obj_set_style_anim_time(bar,500,LV_STATE_DEFAULT);

lv_bar_set_mode( bar, LV_BAR_MODE_RANGE );   /* 设置模式 */
lv_bar_set_start_value( bar, -50, LV_ANIM_OFF );   /* 设置起始值 */

enum {
    LV_BAR_MODE_NORMAL,   /* 默认模式 */
    LV_BAR_MODE_SYMMETRICAL,  /* 从零值绘制到当前值(当前值可以小于0) */
    LV_BAR_MODE_RANGE   /* 允许设置起始值,但起始值必须小于当前值 */
};

加载器

加载器部件常用于提示当前任务正在加载

主体 LV_PART_MAIN

指示器 LV_PART_INDICATOR

手柄 LV_PART_KNOB

// 创建部件  父类 一圈需要的时间 弧长
lv_obj_t   *spinner  = lv_spinner_create( parent, spin_time, arc_length );\lv_obj_set_style_arc_color( spinner, 
// 设置主题颜色                                                                                               
v_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, 30, LV_PART_MAIN );        
lv_obj_set_style_arc_width( spinner, 30, LV_PART_INDICATOR );

LED部件

主体(LV_PART_MAIN)

// 创建led 部件
lv_obj_t *led = lv_led_create(lv_scr_act());
// 设置颜色
lv_led_set_color(led,lv_color_hex(0xff0000));
// 设置亮度(0-255)
lv_led_set_brightness(led,0);
// 开(亮度255)
lv_led_on(led);
// 关(亮度0)
lv_led_off(led);
// 状态转换
lv_led_toggle(led);

列表部件

主体LV_PART_MAIN

滚动条LV_PART_SCROLLBAR

// 创建列表部件
lv_obj_t   *list = lv_list_create( parent );
//添加列表文本
lv_list_add_text( list, “Settings" );
// 添加列表按钮
lv_obj_t  *btn= lv_list_add_btn( list, LV_SYMBOL_WIFI, “WLAN");
//获取列表按钮文本
lv_list_get_btn_text( list, list_btn );

下拉列表

按钮(BUTTON)

列表(LIST)

//创建下拉列表部件
lv_obj_t   *dd = lv_dropdown_create( parent );
//设置选项内容
lv_dropdown_set_options( dd, "a\nb\nc\nd");            /* 设置选项 */
lv_dropdown_set_options_static( dd, "a\nb\nc\nd ");  /* 设置选项 (静态)*/
lv_dropdown_add_option( dd, "e", 4);                   /* 添加选项,索引从0开始 */
//设置当前所选项
lv_dropdown_set_selected( dd, 1);                   /* 注意:索引从0开始 */
//获取选项内容
lv_dropdown_get_selected( dd);     /* 获取索引 */
char buf[10];
lv_dropdown_get_selected_str( dd, buf, sizeof(buf));  /* 获取选项文本 */
//设置方向和图标
lv_dropdown_set_dir(dd, LV_DIR_RIGHT);    /* 设置列表展开方向 */
lv_dropdown_set_symbol(dd, LV_SYMBOL_RIGHT);   /* 设置图标 */

滚轮部件

主体(LV_PART_MAIN)

选项框(LV_PART_SELECTED)

//创建滚轮部件
lv_obj_t   *roller= lv_roller_create( parent );
//设置选项间隔
lv_obj_set_style_text_line_space(roller, 30, LV_STATE_DEFAULT);
//设置选项内容、滚动模式
lv_roller_set_options(roller, “a\nb\nc\nd”, LV_ROLLER_MODE_NORMAL);   /* 正常模式 */
//设置当前所选项
lv_roller_set_selected(roller, 3, LV_ANIM_ON);
//设置可见行数
lv_roller_set_visible_row_count(roller, 2);
//获取选项内容
lv_roller_get_selected(roller);        /* 获取索引 */
char buf[10];
lv_roller_get_selected_str(roller, buf, sizeof(buf));     /* 获取选项文本 */

滑块部件

主体(LV_PART_MAIN)

指示器(LV_PART_INDICATOR)

旋钮(LV_PART_KNOB)

//创建滑块部件
lv_obj_t   *slider = lv_slider_create( parent );
//设置大小、当前值、范围值
lv_obj_set_size(slider, 20, 200);      /* 高度>宽度时,滑块为纵向 */
lv_slider_set_value(slider, 50, LV_ANIM_OFF);    /* 设置当前值 */
lv_slider_set_range(slider, -100, 100);     /* 设置范围值 */
//获取当前值
lv_slider_get_value(slider);
//模式设置
lv_slider_set_mode(slider, LV_SLIDER_MODE_...);
//设置、获取左值
lv_slider_set_left_value(slider, 20, LV_ANIM_OFF);     /* 设置左值 */
lv_slider_get_left_value(slider);        /* 获取左值 */

圆弧部件

背景弧(LV_PART_MAIN)

前景弧(LV_PART_INDICATOR)

旋钮(LV_PART_KNOB)

//创建圆弧部件
lv_obj_t   *arc = lv_arc_create( parent );
//设置当前值、范围值
lv_arc_set_value(arc, 80);       /* 设置当前值(需要在范围值之内)*/
lv_arc_set_range(arc, 0, 200);      /* 设置范围值 */
//设置圆弧角度
lv_arc_set_angles(arc, 135, 270);      /* 设置前景弧角度 */
lv_arc_set_bg_angles(arc, 135, 45);     /* 设置背景弧角度 */
//设置旋转角度
lv_arc_set_rotation(arc, 180);
//获取当前值
lv_arc_get_value(arc);
//设置模式、圆弧绘制速率
lv_arc_set_mode(arc, LV_ARC_MODE_REVERSE);    /* 设置模式 */
lv_arc_set_change_rate(arc, 90);       /* 绘制速率:90°/秒 */

线条

主体(LV_PART_MAIN)

//创建线条部件
lv_obj_t   *line = lv_line_create( parent );
//设置线条坐标点
static lv_point_t  line_points[] = { {15, 5}, {25, 20}, {5, 20}, {15, 5} };
//设置线条样式
lv_obj_set_style_line_width(line, 8, LV_PART_MAIN);            /* 设置宽度 */
lv_obj_set_style_line_rounded(line, true, LV_PART_MAIN);     /* 设置圆角 */
//设置y轴反转
lv_line_set_y_invert(line, true);

图片

主体(LV_PART_MAIN)

//创建图片部件
lv_obj_t  *img = lv_img_create( parent );
//设置图片源
LV_IMG_DECLARE(img_bird);    /* 声明图片 */
lv_img_set_src(img, &img_bird);   /* 设置图片源 */
//设置图片偏移
lv_img_set_offset_x(img, 100);    /* x轴偏移100 */
//图片重新着色
lv_obj_set_style_img_recolor(img, lv_color_hex(0xffe1d2), LV_PART_MAIN); 
lv_obj_set_style_img_recolor_opa(img, 150, LV_PART_MAIN);
//设置图片缩放、旋转
lv_img_set_zoom(img, 512);  /* 放大2倍 */
lv_img_set_angle(img, 900);  /* 顺时针方向旋转90° */
//设置中心点
lv_obj_update_layout(img);  /* 更新图片布局信息 */
lv_img_set_pivot(img, 0, 0);  /* 设置中心点 */

色环

主体(LV_PART_MAIN)

旋钮(LV_PART_KNOB)

//创建色环部件
lv_obj_t  *cw = lv_colorwheel_create( parent, knob_recolor );
//设置当前选中颜色
lv_colorwheel_set_rgb(cw, lv_color_hex(0xff0000));
//获取当前选中颜色
lv_colorwheel_get_rgb(cw);
//设置色环模式
lv_colorwheel_set_mode(cw, LV_COLORWHEEL_MODE_HUE/SATURATION/VALUE);     /* 色相、饱和度、明度 */
lv_colorwheel_set_mode_fixed(cw, true);           /* 固定色环模式 */

按钮矩阵

主体(LV_PART_MAIN)

按钮(LV_PART_ITEMS)

//创建按钮矩阵部件
lv_obj_t  *btnm = lv_btnmatrix_create(parent);
//设置按钮数量、文本
static const char *map[] = { "btn1", "\n", "btn2", "btn3", "" }; /* 定义按钮数组,最后一个元素必须为空 */
lv_btnmatrix_set_map(btnm, map);     /* 设置按钮 */
//设置按钮相对宽度
lv_btnmatrix_set_btn_width(btnm, id, width);   /* 索引 (id) 从0开始,宽度1~7 ( 默认为1 ) */
//获取按钮索引、文本
lv_btnmatrix_get_selected_btn(btnm);     /* 获取索引 */
lv_btnmatrix_get_btn_text(btnm, id);     /* 获取文本 */
//设置、清除按钮属性
lv_btnmatrix_set_btn_ctrl(btnm, id, LV_BTNMATRIX_CTRL_...);   /* 设置单个按钮属性 */
lv_btnmatrix_clear_btn_ctrl(btnm, id, LV_BTNMATRIX_CTRL_...);   /* 清除单个按
enum {
    LV_BTNMATRIX_CTRL_HIDDEN,       /* 隐藏 */
    LV_BTNMATRIX_CTRL_DISABLED,      /* 失能 */
    LV_BTNMATRIX_CTRL_CHECKABLE,      /* 允许状态切换 */
    LV_BTNMATRIX_CTRL_RECOLOR,       /* 允许文本重新着色 */
};
//设置单次选中属性
lv_btnmatrix_set_one_checked(btnm, true);       /* 注意:需要先设置允许状态切换属性 */

文本区域

主体(LV_PART_MAIN)

滚动条(LV_PART_SCROLLBAR)

所选文本(LV_PART_SELECTED)

所选文本(LV_PART_SELECTED)

占位符(TEXTAREA_PLACEHOLDER)

//创建文本区域部件
lv_obj_t  *ta = lv_textarea_create(parent);
//添加文本
lv_textarea_add_char(ta, 'A');     /* 添加一个字符到当前光标处 */
lv_textarea_add_text(ta, "BCDEF");     /* 添加字符串到当前光标处 */
lv_obj_t *keyboard = lv_keyboard_create(lv_scr_act()); /* 创建键盘部件 */
lv_keyboard_set_textarea(keyboard, ta);   /* 关联键盘和文本区域部件 */
//设置光标位置
lv_textarea_set_cursor_pos(ta, 0);    /* 0:最左侧, LV_TEXTAREA_CURSOR_LAST:最右侧 */
//删除文本
lv_textarea_del_char(ta);       /* 删除光标左侧的一个字符 */
lv_textarea_del_char_forward(ta);     /* 删除光标右侧的一个字符*/
//设置模式
lv_textarea_set_one_line(ta, true);     /* 单行模式 */
lv_textarea_set_password_mode(ta, true);    /* 密码模式(隐藏输入的内容) */
lv_textarea_set_password_show_time(ta, 100); 
//限制字符输入
lv_textarea_set_accepted_chars(ta,"0123456789");    /* 限制接收的字符 */
lv_textarea_set_max_length(ta,6);      /* 限制字符长度 */
//设置占位符
lv_textarea_set_placeholder_text(ta, "password");    /* 提示输入密码 */
//获取文本
const char *txt = lv_textarea_get_text(ta);     /* 获取文本框文本 */ 
//比对文本内容
strcmp(const char *s1,const char *s2);     /* 当s1=s2时,返回0 */

键盘

主体(LV_PART_MAIN)

按钮(LV_PART_ITEMS)

//创建键盘部件
lv_obj_t  *kb = lv_keyboard_create(parent);
//关联文本框
lv_obj_t *ta = lv_textarea_create(lv_scr_act());    /* 创建文本区域部件 */
lv_keyboard_set_textarea(kb, ta); 
//设置按键弹窗
lv_keyboard_set_popovers(kb, true);      /* 允许按键弹窗提示 */
//设置键盘模式
lv_keyboard_set_mode(kb, LV_KEYBOARD_MODE_NUMBER);  /* 数字键盘模式 */

图片按钮

图片按钮部件类似于按钮部件,不同的是,用户可以在其中设置图片。

主体(LV_PART_MAIN)

//创建图片按钮部件
lv_obj_t  *imgbtn = lv_imgbtn_create(parent);
//设置图片源、按钮大小
lv_imgbtn_set_src(imgbtn, LV_IMGBTN_STATE_..., src_left, src_mid, src_right);  /* 设置某个状态的图片源 */
lv_obj_set_size(imgbtn, 64 * 3, 64);        /* 设置图片按钮大小 */
//设置按钮状态
lv_imgbtn_set_state(imgbtn, LV_IMGBTN_STATE_PRESSED);    /* 设置按下状态 */

显示带有透明度通道的图片

① 准备一张带有透明度通道的图片

② 官方图片转换工具中,色彩格式选择:CF_TRUE_COLOR_ALPHA

③ 声明图片并调用即可

选项卡

主体(lv_obj)

按钮(lv_btnmatrix)

//创建选项卡部件
lv_obj_t  *tabview =  lv_tabview_create(parent, LV_DIR_..., tab_size);
//添加选项卡
lv_obj_t *tab1 = lv_tabview_add_tab(tabview, "Tab 1"); 
lv_obj_t *tab2 = lv_tabview_add_tab(tabview, "Tab 2"); 
//设置当前选中的选项卡
lv_tabview_set_act(tabview, 1, LV_ANIM_OFF);      /* 索引从0开始 */

平铺视图

主体(LV_PART_MAIN)

滚动条(LV_PART_SCROLLBAR)

//创建平铺视图部件 
lv_obj_t  *tileview = lv_tileview_create( parent );
//添加页面
lv_obj_t *tile1 = lv_tileview_add_tile( tileview, 0, 0, LV_DIR_RIGHT );
lv_obj_t *tile2 = lv_tileview_add_tile( tileview, 1, 0, 
//设置当前显示页面
lv_obj_update_layout( tileview );       /* 更新参数 */
lv_obj_set_tile( tileview, tile2, LV_ANIM_OFF );     /* 根据页面对象设置 */
lv_obj_set_tile_id( tileview, 1, 0, LV_ANIM_OFF );          /* 根据页面行列设置 */

窗口

头部(Header)

主体(Content)

//创建窗口部件
lv_obj_t *win = lv_win_create(parent, header_height);
//添加标题、按钮
lv_obj_t *title = lv_win_add_title(win, "Setting");
lv_obj_t *btn = lv_win_add_btn(win, LV_SYMBOL_CLOSE, 20);    
//添加主体内容
lv_obj_t *content = lv_win_get_content(win);     /* 获取主体 */
lv_obj_t *label = lv_label_create(content);     /* 添加内容 */

消息框

主体(obj)

标题(title)

内容(content)

内容(content)

//创建消息框部件
static const char *btns[] = { "Continue", "Close", "" };
lv_obj_t *msgbox = lv_msgbox_create( lv_scr_act(), "Notice", "Do you want to continue?", btns, true );
//关闭消息框
lv_msgbox_close(msgbox);
//获取按钮索引、文本
lv_obj_t *target = lv_event_get_current_target(e);     /* 获取当前触发源 */
lv_msgbox_get_active_btn(target);       /* 获取按钮索引 */
lv_msgbox_get_active_btn_text(target); 

微调器

主体(LV_PART_MAIN)

光标(LV_PART_CURSOR)

//创建微调器部件 
lv_obj_t *spinbox = lv_spinbox_create(parent);
//数值递增、递减
lv_spinbox_increment(spinbox);        /* 递增 */
lv_spinbox_decrement(spinbox);       /* 递减 */
//设置步进值、范围值
lv_spinbox_set_step(spinbox, 200);       /* 设置步进值,默认为1*/
lv_spinbox_set_range(spinbox, -1000, 1000);      /* 设置范围值,默认±99999*/
//设置当前值
lv_spinbox_set_value(spinbox, 400);
//设置数字格式、光标位置
lv_spinbox_set_digit_format(spinbox, 4, 2);       /* 设置数字位数、小数点位置 */
lv_spinbox_set_pos(spinbox, 3);        /* 设置光标位置 */
//获取当前值
lv_spinbox_get_value(spinbox);         /* 返回值为整数,而非小数 */=

表格

主体(LV_PART_MAIN)

单元格(LV_PART_ITEMS)

// 创建表格部件
lv_obj_t *table = lv_table_create(parent);
//设置行数、列数
lv_table_set_row_cnt(table,2);        /* 设置行数 */
lv_table_set_col_cnt(table,2);        /* 设置列数 */
lv_table_set_col_width(table, 1, 200);       /* 设置列的宽度 */
//设置单元格的内容
lv_table_set_cell_value(table, 0, 0, "123"); 
lv_table_set_cell_value_fmt(table, 1, 0, "%d", 100 );    /* 格式化输入,类似printf */
上一篇
下一篇