Windows仮想デスクトップ。最後に最初のデスクトップに戻る


6

3つの仮想デスクトップがあるとします。私はそれらを使用してそれらをナビゲートできることを知っています:

ctrl + windows + left | 右

しかし、最後に到達した場合に最初に戻るようにする方法はありますか?デスクトップ3にいる場合、「ctrl + windows + right」でデスクトップ1に移動できますか?

AutoHotkeyスクリプトを使用すると、これが可能になるかもしれません。しかし、私はそれを機能させる方法を知りません。

このように機能するためにこれが必要な理由は、購入したばかりのマウス(追加のボタンがある)にこの機能をマップするためです。現在、デスクトップ間で前後に移動できるように2つのボタンを使用する必要があります。必要なボタンは1つだけです。この情報がお役に立てば幸いです。

ありがとう


あなたが使用することができますIniReadIniWriteをあなたが現在あなたがCTRL +窓+左を押すたびに使用している特定のどのデスクトップ知っています| 右。個人的にはWindows 10 Virtual Desktop Enhancerをお勧めします
user3419297

これにより、Windowsにかなりの機能が追加されるので、間違いなくこれを使用します。しかし、これは私の質問にまだ答えていません。デスクトップを「A to B」ではなく「ループ」または「回路」として動作させる必要があります。このように動作するためにこれが必要な主な理由は、購入したばかりのマウスに便利な機能をマッピングするプロセスにいるからです。現在、「次のデスクトップ」と「前のデスクトップ」が2つのボタンにマッピングされていますが、仮想デスクトップナビゲーション用に1つのボタンだけが必要です。この背景情報がお役に立てば幸いです。
カエダンラベンダー

IniRead / IniWriteとVirtual Desktop Enhancerの両方を使用する場合、マウスの「次のデスクトップ」を押すと、最後のデスクトップにいる場合は最初のデスクトップに簡単に切り替えることができます。
user3419297

私はまだこれを行う方法がわかりません。私はこれがAutoHotKeyで可能であることは知っているが、この作業を行う方法がわからないと言った。
カエダンラベンダー

回答:


0

これは、試して適応させるためのアイデアです。テストされていません。

スクリプトが実行されている限り、変数にアクティブな仮想デスクトップを保存するだけなので、必ずしもiniファイルは必要ありません。

スクリプトは、仮想デスクトップ#1をアクティブにして起動するか、強制的に同期する必要があります。強制機能は、ctrl + win + leftを何度でも押すことができ、最初の仮想デスクトップに到達するとループしないことを前提としています。

ショートカットキーはデフォルトのWindowsキーでトリガーされますが、キャプチャしません(つまり、チルダ〜はキーストロークを通過させます)。そのため、キーボードを使用している場合はキーボードを追跡し、マウスを使用している場合は、1つのショートカットキーにマウスを割り当てることができます。

また、デスクトップを切り替えるためにデフォルトのウィンドウキー以外にマウスボタンを割り当てる必要がある場合などに、これをctrl + alt + F8として表示して、1つまたは両方の方向にカスタム複製ショートカットを追加することもできます。

#NoEnv
#Persistent

numDesktops := 3  ; set to match number of virtual desktops
if forceSyncAtStartup := True   ; set to False to disable sync on startup
    SendInput % "^#{Left" (numDesktops-1) "}"

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 % "^#{Right " (numDesktops-1) "}

        ; use this type of setup if a delay is needed
        ; Loop, % (numDesktops-1) {
        ;   SendInput ^#{Right}
        ;   sleep 100       ; adjust for reliability
        ; }
    }
return

~^#Right::
    vDesktop += 1
    sleep 20
    if (vDesktop=(numDesktops+1)) {
        vDesktop := 1
        SendInput % "^#{Left" (numDesktops-1) "}"
    }
return  

ありがとう!有望に見えます。今日は後で試してみます。:)
カエダンラベンダー

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.