How to switch screens correctly?

Hi pete,

Sorry, I forgot important information. Its resolution is 320x240 monochrome screen. I noticed some errors in the input device file. The mouse was not configured, but it executed the mouse_ read. The problem seems to have disappeared now, and the touch on the screen has become smoother. You can focus on the input device file first.

https://forum.lvgl.io/t/how-to-display-mouse-arrows-on-the-screen/12353/1

Hi @gui_lvgl ,

Here is your indev file modified to add a pointer…
lv_port_indev.c (10.9 KB)

Should work okay like this…

Kind Regards,

Pete

Hi @gui_lvgl ,

I have now checked through your code on the simulator and it seems to be working as expected.

The memory increases a little as you open each screen and subscreen when the styles are first initialised as expected and then levels off. There is sometimes fragmentation but it varies and stays well below 10%, this is to be expected when there are many objects in play.

So I don’t think your issues lie with the code sent me to check.

Your indev comments were interesting and hopefully if you have sorted that out all will be well.

Let me know how you get on.

Kind Regards,

Pete

Hi Pete,
Everything is ok now!

I have a physical keyboard input that contains the numbers 0-9, UP, DOWN, HIGH, Left, TAB, ESC, BKSP, ENTER. There will be several widgets on a screen, such as a button,text box, drop-down list.

I want to use the keyboard to navigate and select between them. When focusing on a text box, I can enter numerical values. When focusing on a drop-down list, I can open or close it. When focusing on a button, I can click on it. How to implement this function?

where to put this code
the full one in the void setup?

What if you have more screens? Is there a way to lv_obj_del the existing screen, whatever it might be?