Virtuelle Windows-Desktops. Zum Ende zurück zum ersten Desktop

1543
Caedan Lavender

Nehmen wir an, ich habe drei virtuelle Desktops. Ich weiß, dass ich durch sie navigieren kann mit:

Strg + Fenster + Links | Gibt

es eine Möglichkeit, es wieder zum Anfang zu machen, wenn ich das Ende erreicht habe? Wenn ich also auf Desktop 3 bin, "Strg + Windows + Rechts", gehe ich auf Desktop 1?

Ich weiß, dass dies mit einem AutoHotkey-Skript möglich ist. Aber ich weiß nicht, wie ich das schaffen soll.

Der Grund, warum ich dies brauche, um auf diese Weise zu arbeiten, ist, dass ich beabsichtige, diese Funktionalität einer Maus zuzuordnen, die ich gerade gekauft habe (sie hat zusätzliche Schaltflächen). Zur Zeit muss ich zwei Schaltflächen verwenden, damit ich mich zwischen Desktops hin und her bewegen kann. Ich hätte lieber nur einen Knopf benötigt. Hoffentlich helfen diese Informationen.

Vielen Dank

2
Sie können [IniRead] (https://autohotkey.com/docs/commands/IniRead.htm) und [IniWrite] (https://autohotkey.com/docs/commands/IniWrite.htm) verwenden, um den jeweiligen Desktop zu ermitteln werden derzeit jedes Mal verwendet, wenn Sie die Tastenkombination Strg + Windows + Links | drücken Recht. Ich persönlich empfehle [Windows 10 Virtual Desktop Enhancer] (https://github.com/sdias/win-10-virtual-desktop-enhancer). user3419297 vor 7 Jahren 0
Das fügt Windows einiges an Funktionalität hinzu, also werde ich das definitiv verwenden. Aber das beantwortet meine Frage immer noch nicht. Ich brauche die Desktops als "Schleife" oder "Schaltung" im Gegensatz zu "A zu B". Der Hauptgrund, warum ich dies brauche, ist, weil ich gerade dabei bin, nützliche Funktionen auf eine Maus zu bringen, die ich gerade gekauft habe. Ich habe derzeit "nächster Desktop" und "vorheriger Desktop" zwei Tasten zugewiesen, aber ich hätte lieber nur eine Taste für die Navigation des virtuellen Desktops. Hoffentlich helfen diese Hintergrundinformationen. Caedan Lavender vor 7 Jahren 0
Wenn Sie beide verwenden (IniRead / IniWrite und Virtual Desktop Enhancer), können Sie ganz einfach zum ersten Desktop wechseln, wenn Sie sich auf dem letzten Desktop befinden, indem Sie mit der Maus auf "next desktop" klicken. user3419297 vor 7 Jahren 0
Ich habe immer noch keine Ahnung, wie das geht. Ich habe gesagt, dass ich weiß, dass dies mit AutoHotKey möglich ist, aber ich weiß nicht, wie ich das schaffen soll. Caedan Lavender vor 7 Jahren 0

2 Antworten auf die Frage

0
JJohnston2

Dies ist nur eine Idee für etwas, das Sie ausprobieren und anpassen können ... nicht getestet.

Solange das Skript ausgeführt wird, wird der virtuelle Desktop nur in einer Variablen aktiv gespeichert. Es ist nicht unbedingt eine Ini-Datei erforderlich.

Das Skript muss entweder mit aktivem virtuellen Desktop # 1 gestartet werden oder es muss eine Synchronisierung erzwungen werden. Die Forcing-Funktion setzt voraus, dass Sie die Tastenkombination Strg + Win + Links beliebig oft drücken können, und es wird nicht an dem ersten virtuellen Desktop vorbeigeführt.

Die Tastenkombinationen werden auf den Standard-Fenstertasten ausgelöst, erfassen sie jedoch nicht (dh, Tilde ~ lässt den Tastendruck durchgehen). Es würde also die Tastatur verfolgen, wenn Sie die Tastatur verwenden, und wenn Sie die Maus verwenden, können Sie die Maus einer oder einer anderen Tastenkombination zuordnen.

Sie können auch eine benutzerdefinierte Duplikatverknüpfung für eine oder beide Richtungen hinzufügen. Dies wird als Strg + Alt + F8 angezeigt. Dies ist beispielsweise der Fall, wenn die Maustaste einem anderen als den standardmäßigen Windows-Tasten zugewiesen werden muss, um zwischen Desktops zu wechseln.

#NoEnv #Persistent  numDesktops := 3 ; set to match number of virtual desktops if forceSyncAtStartup := True ; set to False to disable sync on startup SendInput % "^#"  vDesktop := 1 ; this must match the virtual desktop active when program starts if a sync isn't forced return  ^!F8:: ; random/custom shortcut for the mouse if desired ~^#Left:: vDesktop -= 1 if (vDesktop=0) { vDesktop := numDesktops sleep 20 ; optional for better reliability  ; use this if no delay needed for reliable operation SendInput % "^#  ; use this type of setup if a delay is needed ; Loop, % (numDesktops-1) { ; SendInput ^# ; sleep 100 ; adjust for reliability ; } } return  ~^#Right:: vDesktop += 1 sleep 20 if (vDesktop=(numDesktops+1)) { vDesktop := 1 SendInput % "^#" } return  
Vielen Dank! Sieht vielversprechend aus. Ich werde es später heute versuchen. :) Caedan Lavender vor 7 Jahren 0
0
boardtc

Eine weitere Option ist die Verwendung von Finestra Virtual Desktops, die standardmäßig diese Zyklen durchführt und die Hotkeys konfigurierbar sind.