Changer d'écran principal et rotation d'écran via raccourcis
by yobipublished on
Windows et le logiciel NVIDIA (#lesbâtards) faisant défauts en ne proposant pas de raccourcis claviers pour mener à bien ces deux actions, je me suis tourné vers AutoHotkey & Multimonitortool pour palier à leurs manquements.
Je précise que j'ai actuellement un dual screen composé de :
- 1 écran de 32p avec un taux de rafraichissement de 60Hz en QHD
- 1 écran de 24p avec un taux de rafraichissement de 144Hz en FullHD
Les deux me servent à jouer occasionnellement. Certains jeux se prêtent plus à une utilisation en 144Hz ce qui m'amène à basculer de l'un à l'autre. Pour travailler, il m'arrive aussi de basculer régulièrement le 24p en mode portrait.
J'ai donc téléchargé la v1 de AutoHotkey que j'ai installé.
J'ai ensuite récupéré la v64bits de Multimonitortool que j'ai placé à la racine de mon dossier scripts.
Comme je suis une grosse feignasse, j'ai demandé à DeepSeek de me générer le code qui va bien.
Changer d'écran principal à la volée
; Raccourci : Ctrl + Alt + Clic droit
^!RButton::
; Chemin vers MultiMonitorTool
toolPath := "C:\Users\USER\Downloads\Scripts\multimonitortool\MultiMonitorTool.exe"
; Vérifie le nombre d'écrans
SysGet, monitorCount, MonitorCount
if (monitorCount < 2) {
MsgBox, Un seul écran détecté. Impossible de basculer.
return
}
; Récupère l'écran principal actuel
SysGet, currentPrimary, MonitorPrimary
newPrimary := (currentPrimary = 1) ? 2 : 1
; Change l'écran principal via MultiMonitorTool
Run, %toolPath% /SetPrimary %newPrimary%, , Hide
; Notification (optionnelle)
TrayTip, Écran principal changé, Écran %newPrimary% est maintenant principal, , 1
return
Changer la rotation de l'écran 24p
; Script simple pour changer l'orientation de l'écran \\.\DISPLAY1 avec MultiMonitorTool
; Raccourci : Ctrl+Alt+Clic molette (personnalisable)
; Configuration - À ADAPTER selon votre système
mmtPath := "C:\Users\USER\Downloads\Scripts\multimonitortool\MultiMonitorTool.exe" ; Chemin vers MultiMonitorTool
targetDisplay := "\\.\DISPLAY1" ; Nom de l'écran à modifier
showTooltip := true ; Afficher un message de confirmation
; Initialisation
currentRotationIndex := 0
rotations := [0, 90, 270] ; Cycle de rotations (0° → 90° → 270° → 0°...)
; ==============================================
; RACCOURCI PRINCIPAL : Ctrl+Alt+Clic molette
; ==============================================
^!MButton::
; Passer à la rotation suivante
currentRotationIndex := mod(currentRotationIndex + 1, rotations.Length())
newRotation := rotations[currentRotationIndex + 1] ; AHK arrays are 1-based
; Exécuter la commande de rotation
Run, %mmtPath% /SetOrientation %targetDisplay% %newRotation%
; Afficher la confirmation si activé
if (showTooltip) {
ToolTip, %targetDisplay% : Orientation %newRotation%°
SetTimer, RemoveToolTip, 2000
}
return
; ==============================================
; FONCTION POUR SUPPRIMER LE MESSAGE
; ==============================================
RemoveToolTip:
SetTimer, RemoveToolTip, Off
ToolTip
return
J'ai préféré des raccourcis clavier / souris (#COMBO!) moins susceptibles d'entrer en conflit avec ceux de Windows ou d'autres programmes.
Pour finir, j'ai créé des raccourcis des scripts que j'ai balancés dans le dossier DÉMARRAGE de Windows.
Voilà, je suis content et quand je suis content 🤮