事件处理函数
static void event_cb(lv_event_t* e) { lv_obj_t* obj = lv_event_get_current_target(e); LV_LOG_USER("Button %s clicked", lv_msgbox_get_active_btn_text(obj)); }创建message box
static void lv_example_msgbox_1(void) { static const char* btns[] = { "Apply", "Close", "" }; lv_obj_t* mbox1 = lv_msgbox_create(NULL, "Hello", "This is a message box with two buttons.", btns, true); lv_obj_add_event_cb(mbox1, event_cb, LV_EVENT_VALUE_CHANGED, NULL); lv_obj_center(mbox1); }运行效果
static void event_cb(lv_event_t* e) { lv_obj_t* obj = lv_event_get_current_target(e); uint16_t index = lv_msgbox_get_active_btn(obj); LV_LOG_USER("Button %s clicked %d", lv_msgbox_get_active_btn_text(obj),index); if (index == 0) { lv_obj_t* txt = lv_msgbox_get_text(obj); lv_label_set_text(txt, "123"); } else { lv_obj_t* title = lv_msgbox_get_title(obj); lv_label_set_text(title, "456"); } }运行效果