slider.lua 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. module(...,package.seeall)
  2. function create()
  3. scr = lvgl.cont_create(nil, nil)
  4. style_bg = lvgl.style_t()
  5. style_indic = lvgl.style_t()
  6. style_knob = lvgl.style_t()
  7. lvgl.style_copy(style_bg, lvgl.style_pretty)
  8. style_bg.body.main_color = lvgl.color_hex(0x00ff00)
  9. style_bg.body.grad_color = lvgl.color_hex(0x000080)
  10. style_bg.body.radius = lvgl.RADIUS_CIRCLE
  11. style_bg.body.border.color = lvgl.color_hex(0xffffff)
  12. lvgl.style_copy(style_indic, lvgl.style_pretty_color)
  13. style_indic.body.radius = lvgl.RADIUS_CIRCLE
  14. style_indic.body.shadow.width = 8
  15. style_indic.body.shadow.color = style_indic.body.main_color
  16. style_indic.body.padding.left = 3
  17. style_indic.body.padding.right = 3
  18. style_indic.body.padding.top = 3
  19. style_indic.body.padding.bottom = 3
  20. lvgl.style_copy(style_knob, lvgl.style_pretty)
  21. style_knob.body.radius = lvgl.RADIUS_CIRCLE
  22. style_knob.body.opa = lvgl.OPA_70
  23. style_knob.body.padding.top = 10
  24. style_knob.body.padding.bottom = 10
  25. slider = lvgl.slider_create(scr, nil)
  26. lvgl.obj_set_size(slider, 100, 20)
  27. lvgl.slider_set_style(slider, lvgl.SLIDER_STYLE_BG, style_bg)
  28. lvgl.slider_set_style(slider, lvgl.SLIDER_STYLE_INDIC, style_indic)
  29. lvgl.slider_set_style(slider, lvgl.SLIDER_STYLE_KNOB, style_knob)
  30. lvgl.obj_align(slider, nil, lvgl.ALIGN_CENTER, 0, 0)
  31. -- lvgl.disp_load_scr(scr)
  32. label = lvgl.label_create(scr, nil)
  33. lvgl.label_set_text(label, "滑动条")
  34. lvgl.obj_align(label, slider, lvgl.ALIGN_OUT_BOTTOM_MID, 0, 0)
  35. return scr
  36. end
  37. -- lvgl.init(create, nil)