btnmatrix_demo.lua 915 B

123456789101112131415161718192021222324
  1. local btnmatrix_demo = {}
  2. local function event_handler(obj, event)
  3. if(event == lvgl.EVENT_VALUE_CHANGED) then
  4. local txt = lvgl.btnmatrix_get_active_btn_text(obj)
  5. print(string.format("%s was pressed\n", txt))
  6. end
  7. end
  8. function btnmatrix_demo.demo()
  9. local btnm_map = {"1", "2", "3", "4", "5", "\n",
  10. "6", "7", "8", "9", "0", "\n",
  11. "Action1", "Action2",""}
  12. local btnm1 = lvgl.btnmatrix_create(lvgl.scr_act(), nil)
  13. lvgl.btnmatrix_set_map(btnm1, btnm_map)
  14. lvgl.btnmatrix_set_btn_width(btnm1, 10, 2) --Make "Action1" twice as wide as "Action2"
  15. lvgl.btnmatrix_set_btn_ctrl(btnm1, 10, lvgl.BTNMATRIX_CTRL_CHECKABLE)
  16. lvgl.btnmatrix_set_btn_ctrl(btnm1, 11, lvgl.BTNMATRIX_CTRL_CHECK_STATE)
  17. lvgl.obj_align(btnm1, nil, lvgl.ALIGN_CENTER, 0, 0)
  18. lvgl.obj_set_event_cb(btnm1, event_handler)
  19. end
  20. return btnmatrix_demo