找回密码
 立即注册
首页 业界区 科技 LVGL-按键组

LVGL-按键组

周濡霈 昨天 19:21
lv_btnmatrix_create函数

此函数用于创建一个按键矩阵
  1. lv_obj_t *btnx =  lv_btnmatrix_create(lv_obj_t *scr1);
  2. //scr1:父对象的指针
  3. //ret:创建的矩阵按键的句柄
复制代码
lv_btnmatrix_set_map函数

此函数用于设置矩阵按键的标签
  1. const char * map[] = {"btn1", "btn2", "btn3", NULL}
  2. lv_btnmatrix_set_map(lv_obj_t *btnm,char *my_map)
  3. //btnm:矩阵按键的句柄
  4. //my_map:存储矩阵按键标签的指针数组
  5. //notice:矩阵按键的结尾需要使用NULL或者空字符串结束;每一行结束需要使用‘\n’
复制代码
lv_btnmatrix_set_btn_width函数

此函数用于设置矩阵按键中某一个案件的宽度
  1. lv_btnmatrix_set_btn_width(btnm, btn_id, width)
  2. //btnm:矩阵按键的句柄
  3. //btn_id:按键的标号,从0开始
  4. //width:要设置的宽度默认是1,其范围是1-15,表示的是在一行的占比
复制代码
lv_btnmatrix_set_btn_ctrl函数

用于设置按键的参数
  1. lv_btnmatrix_set_btn_ctrl(lv_obj_t *btnm, btn_id, LV_BTNM_CTRL)
  2. //btnm:矩阵按键的句柄
  3. //btn_id:按键的标号,从0开始
  4. //LV_BTNM_CTRL:按键的属性,多个参数可以使用位或‘|’
  5. //LV_BTNMATRIX_CTRL_HIDDEN:设置按键不可见
  6. //LV_BTNMATRIX_CTRL_NO_REPEAT :当一个按键被按压时,设置不连续触发
  7. //LV_BTNMATRIX_CTRL_POPOVER:按键被按下的时候会有弹出框
  8. //LV_BTNMATRIX_CTRL_DISABLED:使按钮处于禁用状态
  9. //LV_BTNMATRIX_CTRL_CHECKED选中该按钮。
复制代码
lv_btnmatrix_clear_btn_ctrl函数

此函数用于清楚按键的参数
  1. lv_btnmatrix_clear_btn_ctrl(lv_obj_t *btnm, btn_id, LV_BTNM_CTRL)
  2. //btnm:矩阵按键的句柄
  3. //btn_id:按键的标号,从0开始
  4. //LV_BTNM_CTRL:按键的属性,多个参数可以使用位或‘|’
复制代码
lv_btnmatrix_set_btn_ctrl_all函数

此函数用于设置矩阵按键的所有按键的属性
  1. lv_btnmatrix_set_btn_ctrl_all(btnm, LV_BTNM_CTRL)
  2. //btnm:矩阵按键的句柄
  3. //LV_BTNM_CTRL:按键的属性,多个参数可以使用位或‘|’
复制代码
lv_btnmatrix_clear_btn_ctrl_all函数

此函数用于设置清除按键的所有按键的属性
  1. lv_btnmatrix_clear_btn_ctrl_all(btnm, LV_BTNMATRIX_CTRL)
  2. //btnm:矩阵按键的句柄
  3. //LV_BTNM_CTRL:按键的属性,多个参数可以使用位或‘|’
复制代码
lv_btnmatrix_set_ctrl_map函数

此函数用于通过一个数组设置每个按钮的属性
  1. void lv_btnmatrix_set_ctrl_map(lv_obj_t *btnm, const uint16_t *ctrl_map, uint16_t btn_cnt);
  2. //btnm:矩阵按键的句柄
  3. //ctrl_map:指向一个 uint16_t 数组的指针。数组中的每个元素定义了对应按钮的控制标志
  4. //btn_cnt:按钮矩阵中的按钮总数(必须与矩阵布局中定义的总按钮数一致)
复制代码
lv_btnmatrix_set_one_checked 函数

函数用于设置按钮矩阵(button matrix)是否启用“单选模式”(即同一时间仅允许一个按钮被选中)。该函数通常与按钮的“可切换”(checkable)(LV_BTNMATRIX_CTRL_CHECKABLE )属性配合使用,适用于需要用户从多个选项中唯一选择的场景(如单选按钮组)。
  1. void lv_btnmatrix_set_one_checked(lv_obj_t *obj, bool en);
  2. //obj:指向按钮矩阵对象的指针
  3. //en:布尔值
  4. //true:启用单选模式(同一时间仅允许一个按钮被选中)
  5. //false:禁用单选模式(允许多个按钮同时被选中)
复制代码
lv_btnmatrix_get_selected_btn函数

此函数用于获取按下的按键的索引编号
  1. uint16_t lv_btnmatrix_get_selected_btn(lv_obj_t *obj);
  2. //obj:指向按钮矩阵对象的指针
  3. //ret:被选中按钮的索引;若没有按钮被选中,返回 LV_BTNMATRIX_BUTTON_NONE(定义为 (uint16_t)-1)
复制代码
lv_btnmatrix_get_btn_text函数

用于获取按钮矩阵中指定按钮的标签文本
  1. const char *lv_btnmatrix_get_btn_text(lv_obj_t *obj, uint16_t btn_id);
  2. //obj:指向按钮矩阵对象的指针
  3. //btn_id:按钮的索引
  4. //ret:指向按钮标签文本的常量字符指针
复制代码
lv_btnmatrix_set_selected_btn 函数

函数用于手动设置按钮矩阵中指定按钮的选中状态,强制将按钮设置为选中状态
  1. lv_btnmatrix_set_selected_btn(lv_obj_t *obj, uint16_t btn_id);
  2. //obj:指向按钮矩阵对象的指针
  3. //btn_id:按钮的索引
复制代码
lv_btnmatrix_get_map函数

函数用于获取按钮矩阵(button matrix)中所有按钮的标签文本数组
  1. const char **lv_btnmatrix_get_map(const lv_obj_t *obj);
  2. //obj:指向按钮矩阵对象的指针
  3. //ret:指向按钮标签数组的指针(类型为 const char **)
复制代码
bool lv_btnmatrix_has_btn_ctrl函数

函数用于检查按钮矩阵中指定按钮是否被设置了特定的控制标志
  1. bool lv_btnmatrix_has_btn_ctrl(lv_obj_t *obj, uint16_t btn_id, lv_btnmatrix_ctrl_t ctrl);
  2. //obj:指向按钮矩阵对象的指针
  3. //btn_id:待检查按钮的索引
  4. //ctrl:待检查的控制标志
  5. //ret:true:指定按钮被设置了 ctrl 对应的控制标志。false:指定按钮未被设置该标志,或 btn_id 超出有效范围。
复制代码
lv_btnmatrix_get_one_checked函数

函数用于获取按钮矩阵(button matrix)当前是否启用了单选模式
  1. bool lv_btnmatrix_get_one_checked(const lv_obj_t *obj);
  2. //obj:指向按钮矩阵对象的指针
  3. //ret:true:按钮矩阵已启用单选模式,false:按钮矩阵未启用单选模式
复制代码
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册