【LVGL】复选框部件

引言

复选框部件(lv_checkbox)

image

复选框相关 api 函数

image

image

示例程序

lv_obj_t *checkbox;

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(checkbox, LV_STATE_CHECKED)) {
            printf("on\r\n");
        } else {
            printf("off\r\n");
        }
    }
}

void my_gui(void)
{
    checkbox = lv_checkbox_create(lv_scr_act());  /* 创建一个复选框 */
    lv_obj_set_align(checkbox, LV_ALIGN_CENTER);    /* 设置对齐 */
    lv_checkbox_set_text(checkbox, "remember the password");    /* 设置复选框文本 */
    lv_obj_set_style_pad_column(checkbox, 20, LV_STATE_DEFAULT);    /* 设置复选框与文本位置 */

    lv_obj_add_state(checkbox, LV_STATE_CHECKED | LV_STATE_DISABLED);   /* 给复选框添加状态,disable表示不可修改状态 */
    lv_obj_clear_state(checkbox, LV_STATE_CHECKED | LV_STATE_DISABLED);   /* 清除复选框状态,并清除disable不可修改状态 */
    lv_obj_add_event_cb(checkbox, event_cb, LV_EVENT_VALUE_CHANGED, NULL);  /* 给复选框添加事件 */
}

博客导航

博客导航

posted @ 2025-11-11 15:46  膝盖中箭卫兵  阅读(2)  评论(0)    收藏  举报
ORCID iD icon https://orcid.org/0000-0001-5102-772X