J'ai installé trois écrans sur Windows 7 et je perds parfois la trace de mon curseur. Existe-t-il un raccourci Windows pour réinitialiser la position de la souris? J'imagine que ce n'est pas le cas, mais pourrait-il y avoir un moyen de configurer une macro simple que je pourrais lier à une combinaison de touches pour placer mon curseur à un emplacement par défaut, tel que le centre de l'affichage principal?
En combinant quelques-unes des idées ci-dessus, j'ai conçu ce script. C'est testé et fonctionne.
CentreCursor.ps1
[System.Reflection.Assembly]::LoadWithPartialName("System.Drawing") | out-null
[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") | out-null
$bounds = [System.Windows.Forms.Screen]::PrimaryScreen.Bounds
$center = $bounds.Location
$center.X += $bounds.Width / 2
$center.Y += $bounds.Height / 2
[System.Windows.Forms.Cursor]::Position = $center
Enregistrez ce script dans un dossier pratique et créez un raccourci dans le menu Tous les programmes:
Target:% systemroot%\system32\windowspowershell\v1.0\powershell.exe -ExecutionPolicy RemoteSigned -File "C:\Chemin d'accès au script\CentreCursor.ps1"
touche de raccourci: Ctrl + Alt + Maj + C
Run: Minimisé
Maintenant, chaque fois que vous appuyez sur Ctrl+Alt+Shift+C, votre curseur va rentrer à la maison.
Edit: Bien que cela ne semble pas être une nécessité sur mon ordinateur, j'ai ajouté la suggestion de Patrick au raccourci.
Activer "Afficher l'emplacement du pointeur lorsque j'appuie sur la touche CTRL" est une option. Ceci est particulièrement utile si une application, telle qu'un pinceau, est plus difficile à voir en changeant de pointeur de souris personnalisé.
Vous pouvez le faire assez facilement avec un logiciel appelé UltraMon .
Dans la section des options, il y a un emplacement pour spécifier les raccourcis clavier. Vous pouvez voir une capture d'écran où j'ai configuré une touche de raccourci pour Crtl + Shift + C
La séquence de commandes suivante AutoHotkey déplace instantanément la souris au centre de l'écran principal:
CoordMode, Mouse, Screen
MouseMove, A_ScreenWidth/2, A_ScreenHeight/2, 0
Par exemple, compilez le script suivant:
CoordMode, Mouse, Screen
MouseMove, A_ScreenWidth/2, A_ScreenHeight/2, 0
ExitApp
Vous pouvez ensuite créer un raccourci (.lnk
) avec une touche de raccourci de votre choix. :)
Voici un script AutoIt pour le faire. AutoIt peut compiler ses scripts en .exe, auxquels vous pouvez ensuite affecter un raccourci clavier.
Dim Const $SPI_GETWORKAREA = 0x0030
$rect = DllStructCreate("long left;long top;long right;long bottom")
DllCall("user32.dll", "BOOL", "SystemParametersInfo", "UINT", $SPI_GETWORKAREA, "UINT", 0, "ptr", DllStructGetPtr($rect), "UINT", 0)
Dim $left = DllStructGetData($rect, 1)
Dim $top = DllStructGetData($rect, 2)
Dim $right = DllStructGetData($rect, 3)
Dim $bottom = DllStructGetData($rect, 4)
MouseMove($left + (($right - $left) / 2), $top + (($bottom - $top) / 2))
L'utilisation de WMIC et de Powershell (qui devraient déjà être installés sous Windows 7) devrait être réalisable.
En utilisant WMIC, vous pouvez obtenir la largeur et la hauteur de l’écran:
C:\>wmic desktopmonitor get screenheight, screenwidth
ScreenHeight ScreenWidth
900 1440
et Powershell peut définir la position de la souris (en remplaçant <X>
et <Y>
par les coordonnées réelles):
PS C:\>[system.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms") | out-null
PS C:\>[System.Windows.Forms.Cursor]::Position = New-Object System.Drawing.Point(<X>,<Y>)
Ainsi, un peu d’essai et d’erreur (et de mathématiques de base) devrait vous donner un script qui, une fois lancé, centre le pointeur de la souris.
Un autre programme AutoIt3 :
<!-- --!>
;;; Define variables according to you
$speed = 1 ; 0=instantly, 1=fastest, 100=slowest
$delay = 100 ; milliseconds
$hotkey = "^+!c" ; ^=Ctrl, +=Shift, !=Alt
;;; Hotkey function
Func GetMyMouse()
MouseMove(@DesktopWidth / 2, @DesktopHeight / 2, $speed)
EndFunc
;;; Register hotkey
HotKeySet($hotkey, "GetMyMouse")
;;; Program body (busy wait)
While True
Sleep($delay)
WEnd
Nircmd de Nir Sofer a l'option suivante.
nircmd setcursor x y
Vous pouvez créer un raccourci vers cette ligne de commande et lui attribuer un raccourci clavier. Il existe de nombreuses autres options pour le curseur de la souris, détaillées dans le fichier nircmd.chm.