Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Quoi de moins simple que de déterminer le RECT de la barre des tâches en multi-moniteurs ? Fichier pour test...

Dudu2

XLDnaute Barbatruc
Bonjour,

La barre des tâches en multi-moniteurs, je ne sais pas bien sur quel(s) moniteur(s) elle se trouve ni ou exactement ni ce qu'elle contient. Y a des tas d'options.

Ici j'aimerais seulement considérer sa position en moniteur et pour ça j'ai 3 options à vérifier en multi-moniteurs avec le fichier de test ci-joint.

XLDNautes multi-monitoristes, pourriez-vous SVP utiliser le fichier joint et pour chacun de vos moniteurs indiquer quels sont parmi les 3 options, les résultats valides de position de la barre des tâches. Avec screenshots joints si possible.

Merci par avance.
 

Pièces jointes

  • TaskBar RECT Multi-Moniteurs.xlsm
    102.4 KB · Affichages: 2
Dernière édition:

Dudu2

XLDnaute Barbatruc
en faisant la soustraction rcmonitor-rcwork de chaque moniteur tu devrait avoir ton rectangle et par la même occasion ça te donne une indication sur sa position
Oui, c'est ce que fait la 1ère fonction qui titre "TaskBar RECT by difference rcWork & rcMonitor"
Mais je voulais savoir ce que donnent les 2 autres qui à mon avis ne vont répondre que sur le moniteur principal, encore que je ne sois pas sûr à 100% selon où se trouve la Window Excel.

En fait je vais passer en multi-moniteurs avec un Laptop pour tester, pas simple pour moi, mais c'est plus sûr que de demander des tests à des personnes plus ou moins disponibles et ne faisant les tests et leur reporting que selon leur humeur du moment, ce que je comprends parfaitement.

Quant à la position de la TaskBar, on peut effectivement la déduire du "TaskBar RECT by difference rcWork & rcMonitor" SAUF si la TaskBar est en AutoHide auquel cas la fonction SHAppBarMessage avec un ABM_GETTASKBARPOS répond toujours sur la position, même en AutoHide.
 
Dernière édition:

Dudu2

XLDnaute Barbatruc
Le problème pour récupérer les rcWork et rcMonitor d'un moniteur qui donnent à coup sûr la position de la TaskBar c'est qu'il faut faire le tour du monde avec un EnumDisplayMonitors(). J'aurais aimé avoir une fonction plus simple.

Il y a bien GetMonitorInfo() mais il faut le Handle du moniteur et si on peut le trouver avec MonitorFromWindow() on ne peut pas le trouver par un numéro de moniteur, en tous cas je n'ai rien trouvé.
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…