calendar_demo.lua 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. local calendar_demo = {}
  2. local function event_handler(obj, event)
  3. if(event == lvgl.EVENT_VALUE_CHANGED) then
  4. local date = lvgl.calendar_get_pressed_date(obj);
  5. -- print(string.format("Clicked date: %02d.%02d.%d\n", date.day, date.month, date.year))
  6. end
  7. end
  8. function calendar_demo.demo()
  9. local calendar = lvgl.calendar_create(lvgl.scr_act(), nil);
  10. lvgl.obj_set_size(calendar, 235, 235);
  11. lvgl.obj_align(calendar, nil, lvgl.ALIGN_CENTER, 0, 0);
  12. lvgl.obj_set_event_cb(calendar, event_handler);
  13. --Make the date number smaller to be sure they fit into their area
  14. lvgl.obj_set_style_local_text_font(calendar, lvgl.CALENDAR_PART_DATE, lvgl.STATE_DEFAULT, lvgl.theme_get_font_small());
  15. --Set today's date
  16. local today = lvgl.calendar_date_t()
  17. today.year = 2018;
  18. today.month = 10;
  19. today.day = 23;
  20. lvgl.calendar_set_today_date(calendar, today);
  21. lvgl.calendar_set_showed_date(calendar, today);
  22. local highlighted_days1 = lvgl.calendar_date_t()
  23. highlighted_days1.year = 2018;
  24. highlighted_days1.month = 10;
  25. highlighted_days1.day = 6;
  26. local highlighted_days2 = lvgl.calendar_date_t()
  27. highlighted_days2.year = 2018;
  28. highlighted_days2.month = 10;
  29. highlighted_days2.day = 11;
  30. local highlighted_days3 = lvgl.calendar_date_t()
  31. highlighted_days3.year = 2018;
  32. highlighted_days3.month = 10;
  33. highlighted_days3.day = 12;
  34. local highlighted_days = {highlighted_days1,highlighted_days2,highlighted_days3}
  35. lvgl.calendar_set_highlighted_dates(calendar, highlighted_days, 3);
  36. end
  37. return calendar_demo