lvgl btnm(矩阵按钮)

1. 创建一个矩阵按钮映射表

2. 创建一个矩阵按钮对象

3. 使矩阵按钮映射表与矩阵按钮对象关联

4. 设置矩阵按钮的某个按钮宽度

	//3. 创建一个矩阵按钮
	//3.1 定义一个矩阵按钮
	static const char * btnm_map[] = {	"1", "2", "3", "+", "\n",
										"4", "5", "6", "-", "\n",
										"7", "8", "9", "*","\n",
										"0", "Ok", "Cancel", "" };
	//3.2 创建一个矩阵对象
	lv_obj_t *btnm = lv_btnm_create(lv_scr_act(), NULL);
	//3.2 设置矩阵映射表
	lv_btnm_set_map(btnm, btnm_map);
	//3.3 设置矩阵id=13的宽度为同行按钮的2倍
	lv_btnm_set_btn_width(btnm, 13, 2); 
	//3.4 设置矩阵按钮的对其方式
	lv_obj_align(btnm, NULL, LV_ALIGN_IN_TOP_RIGHT, -280, 0);
	//3.5 设置矩阵按钮的事件
	lv_obj_set_event_cb(btnm, btm_event_handler);

5. 设置矩阵按钮的事件

//描述:矩阵按钮事件
static void btm_event_handler(lv_obj_t * obj, lv_event_t event)
{
	if (event == LV_EVENT_VALUE_CHANGED) {
		const char * txt = lv_btnm_get_active_btn_text(obj);

		printf("%s was pressed\n", txt);
	}
}

6. 演示效果

おすすめ

転載: blog.csdn.net/chenliang0224/article/details/112210399