Come modificare il tasto di scelta rapida per passare da desktop virtuali a Windows 10?


64

In Linux utilizzo un collegamento per passare da 4 aree di lavoro: win+ 1/2/3/4.

Vorrei avere qualcosa di simile in Windows 10.

SOLUZIONE DI AGGIORNAMENTO 2017, WINDOWS 10x64

  1. Aggiorna la versione di Windows alla più recente tramite questo programma di aggiornamento . Potrebbe essere necessario ridistribuire Visual C ++ per Visual Studio 2015
  2. Scarica e decomprimi questo Virtual Desktop Enhancer (0.9.1) di Windows 10 funziona per me.
  3. Cambia il contenuto del file settings.ini in
[KeyboardShortcuts]
Switch=LWin
Move=LAlt, Shift, Ctrl
MoveAndSwitch=LAlt, Shift
Previous=Left
Next=Right
PlusTen=
  1. Esegui virtual-desktop-Enhancer.exe come amministratore .

2
Questa è una domanda valida In Windows 10, sei autorizzato a passare tra le visualizzazioni del desktop virtuale. Questo è molto simile a come Mac OSX e Linux ti hanno permesso di passare in passato.
Geruta,

Forse c'è un prompt dei comandi o un comando PowerShell che può passare a un desktop specifico? (In tal caso, dovrebbe essere facile creare uno script batch o qualcosa del genere e quindi utilizzare solo il tasto auto per reindirizzare win + 1/2/3/4 a detto script batch) altrimenti, quando un programma viene impostato su focus, Windows 10 passerà sul desktop su cui è attivo il programma. Quindi questo significa che se c'è un modo per aprire un programma su un desktop specifico, potrebbe essere possibile fare quello che ho descritto sopra con qualche trucco basato su quella funzione.
Cestarian,

Si noti che, per impostazione predefinita, in Windows 10, si WIN + 1/2/3/4...apre, passa o riduce a icona la finestra nella posizione numerata corrispondente nella barra delle attività. Ad esempio, se ho Chrome appuntato sulla barra delle applicazioni in posizione 1 ed è attualmente chiuso, WIN + 1lo aprirò. Premere di nuovo per minimizzarlo e premere di nuovo per riportare la finestra. Posso combinare questo con altre scorciatoie; ora premendo WIN + SHIFT + 1si aprirà una nuova finestra di Chrome, ad esempio.
Ninjakannon,

Aggiornamento: la versione (0.9.1) funziona senza problemi sulla ver. 1903 da maggio 2019
Dariusz Filipiak

Risposte:


41

Ciò di cui hai bisogno è il seguente:

  • Finestra a scatto: WIN +LEFToRIGHT (può essere utilizzata conUPoDOWNper accedere ai quadranti)
  • Passa alla finestra recente: Alt +Tab(invariato): Hold mostra la nuova visualizzazione della finestra della vista Attività, lascia andare e passa all'app.
  • Visualizzazione attività: WIN +Tab- La nuova visualizzazione attività si apre e rimane aperta.
  • Crea nuovo desktop virtuale: WIN +Ctrl+d
  • Chiudi il desktop virtuale corrente: WIN +Ctrl+F4
  • Cambia desktop virtuale: WIN +Ctrl+LEFToRIGHT

Quindi la differenza qui è che devi prima creare il 2 ° desktop con (WIN + CTRL + D), quindi passare ad esso con (WIN + CTRL + DESTRA)
Geruta

17
Manca ancora un modo per passare a un desktop specifico con un collegamento (ovvero direttamente dal desktop 1 al desktop 3)
Cestarian

Sfortunatamente, WIN CTRL DESTRA non funziona su un Samsung Ativ 9+. SINISTRA funziona, ma non c'è nessun avvolgimento tra ad esempio 3 desktop virtuali. Qualcuno con un'esperienza migliore?
Carl

3
Sottovalutato per non aver risposto alla domanda: chiede come modificarlo, in particolare per poter utilizzare un numero di desktop su cui passare.
Luc,

16

Penso di aver appena costruito esattamente quello che stai cercando. Uso un gestore di finestre su Linux e volevo usare i tasti di scelta rapida in modo simile su Windows.

https://github.com/pmb6tz/windows-desktop-switcher

Il mio script utilizza CapsLock perché è più conveniente per me, ma potresti configurarlo facilmente per te. Probabilmente c'è un bug o due lì dentro ma in generale l'ho trovato abbastanza solido. Spero che questo ti aiuti!


Lo script funziona perfettamente, dopo che ho commentato l'ultimo paragrafo del codice. Grazie per aver condiviso. Ho effettuato una richiesta pull con le modifiche apportate al codice.
David,

12

Ho appena creato uno script per autohotkey che esegue ciò in Windows 10 per un massimo di 10 desktop.

Come farlo funzionare:

Scarica e installa autohotkey . Copia e incolla il seguente codice nel blocco note e salvalo con l'estensione .ahk

Suggerisco di creare un collegamento di questo file nella cartella di avvio in modo che venga eseguito all'avvio di Windows.

Tasti di scelta rapida predefiniti:

Cambia desktop: WIN + DESKTOP NUMBER (0 = desktop numero 10)

Nuovo desktop: CTRL + WIN + D

Chiudi desktop: CTRL + WIN + F4

Visualizza stato desktop: WIN + '

IMPORTANTE:

Affinché funzioni, è necessario utilizzare SOLO i tasti di scelta rapida per aprire, chiudere e modificare i desktop perché lo script è in ascolto per questi tasti di scelta rapida per conoscere il numero corrente e totale di desktop.

Se crei, chiudi o cambi desktop tramite il menu WIN + TAB con il mouse lo script smetterà di funzionare. Per farlo funzionare di nuovo dovrai modificare le prime due righe per riflettere lo stato corrente dei tuoi desktop. (Desktopcount / currentdesktop)

Ciò non significa che non è possibile utilizzare la schermata WIN + TAB come panoramica dei desktop correnti. Puoi effettivamente usarlo in combinazione con i tasti di scelta rapida per organizzare i tuoi desktop. Sì, i tasti di scelta rapida funzionano ancora quando il Visualizzatore attività di Windows è aperto! (WIN + TAB) NON usare il mouse !!!

Inoltre, attendi che lo script venga caricato dopo l'avvio di Windows prima di creare nuovi desktop, altrimenti non funzionerà. Questo potrebbe richiedere un momento a seconda di quanti programmi di avvio hai.

Ok, ho aggiunto un'altra cosa per semplificare la risincronizzazione dello script con lo stato del desktop. Ora c'è un tasto di scelta rapida che mostrerà lo stato in cui si trova lo script in cui si trovano i desktop, quindi tutto ciò che devi fare è adattare i tuoi desktop con il mouse per adattarli allo script e sarà nuovamente sincronizzato! Per me con una tastiera svizzera ha funzionato bene avendo il '? tasto vicino a 0 e ha senso con un? su di esso, ma su altre tastiere potresti voler cambiare ciò che può essere fatto facilmente cambiando la linea subito dopo il tasto di scelta rapida per 0/10 (iniziando con # ') a quello che ti piace.

In realtà, ho appena realizzato .... fintanto che il conteggio del desktop è corretto rispetto alla creazione di un nuovo desktop sincronizzerà automaticamente il valore del desktop corrente.

(Le righe che iniziano con; sono commenti e non influiscono sullo script)

Codice:

#NoTrayIcon
;If the script stops working:
;Change the following values to reflect your current desktop state and reload the script.
;Remember to change them back to 1 after reloading the script if you have it set to start with Windows

desktopcount := 1
currentdesktop := 1

;You can change the hotkeys for creating, closing, and switching desktops bellow.
;The current hotkeys are CTRL+WIN+D for new desktop, CTRL+WIN+F4 to close desktop
;and WIN+NUMBER for switching desktops.
;For example, to change the hotkey for new desktop replace ^#D bellow with the desired hotkey.
;Refer to the autohotkey documentation for a full list of symbols refering to modifier keys,
;as you can see ^ is CTRL and # is WIN key.
;If you wanted to change the switch desktop from WIN key to CTRL for example you would have
;to replace the # before each number to a ^

^#D::NewDesktop()
^#F4::CloseDesktop()
#1::SwitchDesktop(1)
#2::SwitchDesktop(2)
#3::SwitchDesktop(3)
#4::SwitchDesktop(4)
#5::SwitchDesktop(5)
#6::SwitchDesktop(6)
#7::SwitchDesktop(7)
#8::SwitchDesktop(8)
#9::SwitchDesktop(9)
#0::SwitchDesktop(10)
#'::MsgBox Desktop Count = %desktopcount%`nCurrent Desktop = %currentdesktop%

;Do not change anything after this line, unless you know what you are doing ;)
;-----------------------------------------------------------------------------------------------
SwitchDesktop(desktop)
{

    global desktopcount
    global currentdesktop
    desktopdiff := desktop - currentdesktop
    if (desktop > desktopcount)
    {
        return
    }
    if (desktopdiff < 0)
    {
        desktopdiff *= -1
        Loop %desktopdiff%
        {
        Send ^#{Left}
        }   
    }
    else if (desktopdiff > 0)
    {
        Loop %desktopdiff%
        {
        Send ^#{Right}
        }
    }
    currentdesktop := desktop
}

NewDesktop()
{
    global desktopcount
    global currentdesktop
    if (desktopcount > 9)
    {
        return
    }
    desktopcount ++
    currentdesktop := desktopcount
    Send ^#d
}

CloseDesktop()
{
    global desktopcount
    global currentdesktop
    desktopcount --
    if (currentdesktop != 1)
    {
        currentdesktop --
    }
    Send ^#{f4}
}

Inoltre puoi aggiungere #NoTrayIcon all'inizio dello script se non ti piace la piccola icona verde nella barra delle applicazioni.
OptimistPrime

1
Oh ... ho già creato Droptic uno script migliore che ottiene i desktop attivi e totali dal registro. Buona idea!
OptimistPrime,

1
Tuttavia, si noti che il percorso del registro potrebbe essere diverso per utente / computer. Non so cosa abbia influenza su questo, ma il mio percorso per l'attuale ID desktop era in una cartella con il numero 2, non 1: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SessionInfo\2\VirtualDesktops
OptimistPrime

Uomo meraviglioso!! Grazie per la condivisione. Ho appena cambiato # 1 con ^ 1 Mi piace usare Ctrl invece il tasto Win.
Gueorgui Obregon,

Questo script è FANTASTICO! L'unica cosa con me è che ho già qualche rimappatura di capslock e vorrei aggiungerlo alla mia sceneggiatura. Purtroppo, non funziona. Funziona solo se rimuovo la seguente riga (prima dello script): CapsLock :: Ctrl Qualche idea su come posso risolvere questo problema? Rimuovere questa linea funziona, ma avere CAPSLOCK come Ctrl è molto importante per me ...
bitstream

1

Ad esempio, voglio impostare Pagina giù per il desktop successivo e Pagina su per il desktop precedente Dopo aver installato AutoHotkey, creo un nuovo script AutoHotKey e aggiungo questi codici e lo salvo, quindi eseguo lo script

PgDn::^#Right ;Next Desktop
return 

PgUp::^#Left ;Previous Desktop
return 

e funzionerà bene :)

Aggiornamento: a volte il codice sopra non funziona e devi fare clic in un punto. Quindi l'ho cambiato in questo:

PgDn::
   {
      MouseGetPos,,,win
      WinGetClass, class, ahk_id %win%
      If class in Progman,WorkerW
         send {Click}^#{Right}  
      else
         send ^#{Right}  ; Next  Desktop  
      return
    }

PgUp::
    {
       MouseGetPos,,,win
       WinGetClass, class, ahk_id %win%
       If class in Progman,WorkerW
          send {Click}^#{Left}
       else
          send ^#{Left}  ; Previous Desktop  
       return
    }

0

Ok, soluzione parziale ... perché non so come andare direttamente al desktop virtuale selezionato:

Questo programma autohotkey con script:

#NoTrayIcon
#2::^#Right
#1::^#Left
#3::Return
#4::Return

1
Questo è bello se hai solo due desktop virtuali, ma ne ho tre.
Michael Beijer,

-1

Ho fatto un aggiornamento sul posto direttamente da Windows 7 a 10 e ho lottato con l'utilizzo dei tasti Windows + CTRL + Freccia per passare da un desktop all'altro perché non funzionavano. Tuttavia, nel mio caso la soluzione era semplice: utilizzare i singoli tasti funzione (F1, F2, F3 ecc.) Per passare facilmente da un desktop virtuale all'altro. Ora non so se questo è specifico per il mio laptop HP o parte della versione rilasciata, ma è allo stesso tempo elegante e semplice. Suppongo che se non hai i tasti funzione mappati per qualche altro scopo, dovrebbe funzionare anche per te.


1
F1 è di aiuto su ogni macchina Windows che abbia mai usato. La tua risposta non ha senso.
DavidPostill

Questa non è sicuramente la mia esperienza sul mio laptop Dell Precision (con Win 10). Win + Ctrl + F1 / F2 / F3 non fanno nulla. Anche se sarebbe fantastico se lo facessero.
Michael Beijer,

-1

Sto usando i Desktop v2.0 di SysInternals e ho 4 desktop con una sola chiave: F1, F2, F3, F4 (qualcuno sta usando F1 per invocare l'aiuto, davvero?). Per me, la soluzione di Windows 10 è inutilizzabile a causa di tre scorciatoie da tastiera.

Ufficiali desktop v2.0: https://technet.microsoft.com/en-us/sysinternals/cc817881.aspx


Questo prodotto non supporta Windows 8 e versioni successive. Come faccio a sapere questo, perché ricordo specificamente, una domanda in passato che
faceva

1
Tuttavia funziona perfettamente con Windows 8.1 e 10.
dblacha,

-2

Lo script AHK fornito da OptimistPrime: https://superuser.com/a/1050690/184229 non funziona per me (i tasti non hanno alcun effetto), ma

questo funziona benissimo: https://github.com/pmb6tz/windows-desktop-switcher/blob/master/desktop_switcher.ahk


Si prega di citare le parti essenziali della risposta dai collegamenti di riferimento, in quanto la risposta può diventare non valida se le pagine collegate cambiano.
DavidPostill

Avrei preferito commentare la risposta a cui mi riferivo, ma non mi era permesso. Se avessi dato un'occhiata più da vicino alla mia risposta, avresti notato che: 1. dà una risposta alla domanda originale 2. sarebbe molto prolisso e non molto adeguato per copiare il contenuto del secondo link che ho dato.
dvo,
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.