Esiste un collegamento Win7 per posizionare il mouse al centro dello schermo principale?


25

Ho un monitor tre installato su Windows 7 e a volte perdo la traccia di dove si trova il mio cursore. Esiste un collegamento di Windows per ripristinare la posizione del mouse? Suppongo di no, ma potrebbe esserci un modo per impostare una macro semplice che potrei associare a una combinazione di tasti per impostare il cursore su una posizione predefinita, come il centro del display principale?


6
Potrei scriverti un programma che fa questo quando fai clic, ma dovresti trovare il cursore del mouse e spostarlo sull'icona del programma per fare clic. :-(
Dave Becker,

1
@DaveBecker, che ne dici di un programma che lo esegue? Quindi puoi avviarlo con un tasto di scelta rapida.
Hand-E-Food

1
Personalmente penso che tutti dovrebbero attivare il cursore di posizione sul pulsante predefinito. Tutti cercano sempre prima la finestra del programma , quindi pensano di spostare il cursore su tale. Inoltre credo che tutti dovrebbero cambiare il loro schema di cursore nel cursore Extra Large Black, poiché c'è una piaga di sfondi bianchi / di colore chiaro.
surfasb

Risposte:


27

Combinando alcune delle idee di cui sopra, mi è venuta in mente questa sceneggiatura. È testato e funzionante.

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

Salva questo script in una comoda cartella e crea un collegamento nel menu Tutti i programmi:

Destinazione: % systemroot% \ system32 \ windowspowershell \ v1.0 \ powershell.exe -ExecutionPolicy RemoteSigned -File "C: \ Path To Script \ CentreCursor.ps1"

Tasto di scelta rapida: Ctrl + Alt + Maiusc + C

Esegui: ridotto a icona

Ora ogni volta che premi Ctrl+ Alt+ Shift+ C, il cursore tornerà a casa.

Modifica: anche se non sembra essere un requisito sul mio computer, ho aggiunto il suggerimento di Patrick al collegamento.


3
Gli script di PowerShell richiedono la modifica del criterio di esecuzione, se non lo si è già fatto. Dovresti cambiarlo permanentemente o eseguire PowerShell.exe con l'argomento "-ExecutionPolicy RemoteSigned".
Patrick Seymour,

@ Hand-E-Food Devi aver modificato la politica di esecuzione sulla tua macchina o qualcosa del genere perché non sono riuscito a far funzionare la tua risposta come scritto. Ho dovuto cambiare la destinazione in % systemroot% \ system32 \ windowspowershell \ v1.0 \ powershell.exe -ExecutionPolicy RemoteSigned "C: \ PathToScript \ CentreCursor.ps1" per farlo funzionare. Ho riordinato gli argomenti, il comando di Patrick doveva venire prima del file. Ho aggiornato la tua risposta per riflettere questo.
tehDorf

O si. Grazie @ Hand-E-Food e tutti gli altri che hanno trovato la risposta in questa!
TehDorf

Felice di aiutare! Mi ha insegnato qualcosa di nuovo. (E "center" è perfettamente accettabile al di fuori degli Stati Uniti.) ;-)
Hand-E-Food

Cordiali saluti, Windows 10 non accetterebbe un percorso con spazi e% systemroot% non è impostato. Ho dovuto eseguire il comando nella directory con il file ed eseguirlo come C: \ Windows \ System32 \ WindowsPowerShell \ v1.0 \ powershell.exe -ExecutionPolicy RemoteSigned. \ CenterCursor.ps1
simpleuser

13

Attivare "Mostra posizione del puntatore quando premo il tasto CTRL" è un'opzione. Ciò è particolarmente utile se attualmente è stato modificato in un puntatore del mouse personalizzato da un'applicazione, come un pennello, che è più difficile da vedere.

inserisci qui la descrizione dell'immagine


2
Pointer Trails è anche molto utile, rende un bersaglio molto più grande da vedere quando muovi il mouse.
Scott Chamberlain,

8

Puoi farlo abbastanza facilmente con un programma software chiamato UltraMon .

Nella sezione opzioni c'è un posto per specificare i tasti di scelta rapida. Puoi vedere lo screenshot in cui ho impostato un tasto di scelta rapida per Crtl + Shift + C

inserisci qui la descrizione dell'immagine


1
Sembra buono ma $ 40US è un po 'troppo se questo è tutto ciò che un utente vuole fare.
Brian,

Non è GRATUITO, puoi condividere anche strumenti GRATUITI.
YumYumYum

+1 Nella mia azienda, Ultramon è installato su tutti i computer per impostazione predefinita, già molti dei miei colleghi ti devono uno per questo (consegnato da me) :)
Pavel

7

La seguente sequenza di comandi AutoHotkey sposta istantaneamente il mouse al centro del display principale:

CoordMode, Mouse, Screen
MouseMove, A_ScreenWidth/2, A_ScreenHeight/2, 0

Ad esempio, compila il seguente script:

CoordMode, Mouse, Screen
MouseMove, A_ScreenWidth/2, A_ScreenHeight/2, 0
ExitApp

È quindi possibile creare un collegamento ( .lnk) con un tasto di scelta rapida a scelta. :)


3

Ecco uno script AutoIt per farlo. AutoIt può compilare i suoi script in .exe, che è quindi possibile assegnare un tasto di scelta rapida.

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

1

Utilizzando WMIC e Powershell (entrambi i quali dovrebbero essere già installati su Windows 7) ciò dovrebbe essere fattibile.

Usando WMIC, puoi ottenere la larghezza e l'altezza dello schermo:

C:\>wmic desktopmonitor get screenheight, screenwidth
ScreenHeight  ScreenWidth
900           1440

e Powershell può impostare la posizione del mouse (sostituendo <X>e <Y>con le coordinate effettive):

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

Quindi, un piccolo tentativo ed errore (e matematica di base) dovrebbe darti uno script che, quando eseguito, centra il puntatore del mouse.


1
Gli script di PowerShell richiedono la modifica del criterio di esecuzione, se non lo si è già fatto. Dovresti cambiarlo permanentemente o eseguire PowerShell.exe con l'argomento "-ExecutionPolicy RemoteSigned".
Patrick Seymour,

0

Un altro programma 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

Nircmd di Nir Sofer ha la seguente opzione.

nircmd setcursor xy

È possibile creare un collegamento a questa riga di comando e assegnargli qualsiasi tasto di scelta rapida. Ci sono molte altre opzioni per il cursore del mouse, come dettagliato nel file nircmd.chm.


Questo è un buon metodo tranne per il fatto che sembra lento (impiega circa 3 secondi per eseguirlo su Windows). Ma non richiede molto altro. Ho dovuto usare il collegamento elevato per evitare il popup di sicurezza di Windows.

-1

uhh ... non penso proprio

ma sul problema di trovare il mouse PUOI attivare "sonar puntatore" in modo che il puntatore si raffini quando si preme il tasto di controllo. (attualmente su un Mac, ma cercherò di ottenere schermate tra un momento e modificarlo in)

per quanto riguarda l'idea macro. Immagino sia plausibile ... ma non conosco nessuna app che lo abbia già programmato o come programmarlo da solo

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.