web-dev-qa-db-fra.com

Existe-t-il un raccourci Win7 pour positionner la souris au centre de l'écran principal?

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?

25
tehDorf

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.

27
Hand-E-Food

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é.

enter image description here

13
Brian

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

enter image description here

7
quickcel

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. :)

7
iglvzx

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))
3
Patrick Seymour

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.

1
Andrew Lambert

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
0
mmdemirbas

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.

0
user38660