Hello there,
Got this infromation from an thread which states EnumDisplayMonitors returns monitors in the order defined in the Display Settings, while QGuiApplication::screens always shows primary screen at the first position (actually, QGuiApplication::primaryScreen simply do that: return the first element).
Looking at the source code, in Windows Qt also uses the EnumDisplayMonitors function but basically moves the primary screen to the first position (it actually inserts in the first position the primary screen, while inserting at the end of the list any other monitor).
So, the primary screen will be at first position, screens with an index lower than primary screen's will be shifted one position, while the rest will match the index.
Similar discussion here https://learn.microsoft.com/en-us/answers/questions/1153873/after-skipping-the-windows-background-desktop-appl
Hope this resolves your Query !!
--If the reply is helpful, please Upvote and Accept it as an answer--