Version LVLG 8.3
Problem: Cannot set a date for 2024 in the lv_calendar.
Reproduce Test: Go to the docs → lv_calendar → simulator.
Edit the code in the micropython simulator, to show a date for 2024.
It will fail!
I am posting the modified code you can test in the simulator.
##### startup script #####
#!/opt/bin/lv_micropython -i
import lvgl as lv
import display_driver
##### main script #####
def event_handler(evt):
code = evt.get_code()
if code == lv.EVENT.VALUE_CHANGED:
source = evt.get_current_target()
date = lv.calendar_date_t()
if source.get_pressed_date(date) == lv.RES.OK:
calendar.set_today_date(date.year, date.month, date.day)
print("Clicked date: %02d.%02d.%02d"%(date.day, date.month, date.year))
calendar = lv.calendar(lv.scr_act())
calendar.set_size(200, 200)
calendar.align(lv.ALIGN.CENTER, 0, 20)
calendar.add_event_cb(event_handler, lv.EVENT.ALL, None)
calendar.set_today_date(2024, 1, 5)
calendar.set_showed_date(2024, 1)
# Highlight a few days
highlighted_days=[
lv.calendar_date_t({'year':2024, 'month':1, 'day':1}),
lv.calendar_date_t({'year':2023, 'month':12, 'day':25}),
lv.calendar_date_t({'year':2024, 'month':1, 'day':22})
]
calendar.set_highlighted_dates(highlighted_days, len(highlighted_days))
lv.calendar_header_dropdown(calendar)
It will set the dropdown date to year to 1901, and month to 01
I have the same problem in my production code, and cannot set a date using the calendar beyond 2023.
When clicking the dropdown, it starts at 1901
and after much scrolling, you can only get to 2023
Please assist.
Thx