Lorsqu’on démarre une application « grand public », se pose inévitablement la question : « Quelle doit être la taille minimale de ma fenêtre principale pour que tout le monde (en tout cas la majorité) puisse utiliser mon application confortablement ? » . Ce bout de code pourrait vous aider à répondre à cette question.
En utilisant les statistiques du site screenresolution.org et les tailles écran « standard », ce code affiche la résolution la plus populaire. Fin 2022, la réponse est : 1920×1080 pour 62.558% des utilisateurs (le test se fait sur les écrans 16:9 et 16:10 qui ont supplantés les écrans 4:3).
Ce résultat évolue évidemment dans le temps et ne tient pas compte du facteur d’agrandissement de Windows. Malgré tout, ce dernier propose, par défaut pour les écrans contenant plus de pixels, un facteur d’agrandissement qui, au final, ramène l’affichage au FullHD (1920×1080). Ces facteurs en X en Y sont disponibles dans la fonction FacteurAgrandissementPolice de Betula.
Aussi, tenez compte de la barre des tâches. Là aussi plusieurs possibilités existent. Par défaut, elle est en bas et sa hauteur est (selon la fonction BarreTâchesInfo de Betula) de 30px.
Donc, au final, et à la date de rédaction de cet article, une fenêtre principale de 1920 x 1050 est un bon choix !
Votre application installée en clientèle, vous pouvez utiliser la télémétrie pour avoir une vue exacte de cette information et ajuster votre application en consequence.
sContenu,sTaille sont des chaînes taPC est un tableau associatif de réels ta169 est un tableau associatif de réels //16:9 ta169["1024x576"]=0 //PAL ta169["1280x720"]=0 //HD ta169["1366x768"]=0 // ta169["1600x900"]=0 // ta169["1920x1080"]=0 //FullHD ta169["2560x1440"]=0 //WQHD ta169["3840x2160"]=0 //UHD-1 //16:10 ta169["2048x1024"]=0 //2K ta169["4096x2160"]=0 //4K Sablier(Vrai) SI HTTPRequête("https://fr.screenresolution.org/") ALORS sContenu=HTTPDonneRésultat(httpRésultat) sContenu=UTF8VersAnsi(sContenu) n,m sont des entiers n=Position(sContenu,"",n+1) SI m>0 _ET_ sTaille<>Milieu(sContenu,n+11,m-n-12) ALORS sTaille=Milieu(sContenu,n+11,m-n-12) taPC[ExtraitChaîne(sTaille,1,[" ",":"])]=ExtraitChaîne(sTaille,1," ",DepuisFin) FIN n=Position(sContenu," =sLargeur1 _ET_ ExtraitChaîne(sTaille2,2,"x")>=sHauteur1 ALORS ta169[sTaille1]+=rPC2 SI ta169[sTaille1]>rPCMax ALORS rPCMax=ta169[sTaille1];sTaille=sTaille1 FIN FIN FIN Info(sTaille,rPCMax+"%")