ひと工夫したので貼っておこー
やりたいこと
マウスジェスチャーで仮想デスクトップを切り替えたい。
やったこと
- 以下のサイトからMouseGestureL.ahkをダウンロードします。
MouseGestureL.ahk
https://hp.vector.co.jp/authors/VA018351/mglahk.html
「MouseGestureL.ahk Ver. 1.40 (2022/06/22)」リンクから「MGLahk140.zip」をダウンロードする。
2. ダウンロードした「MGLahk140.zip」を展開し、以下に格納します。
C:\tool\MGLahk140
└─Setup.vbs
└─ ・・・
※格納場所任意。
3. 「Setup.vbs」を実行し、「MouseGestureL.exe」を生成します。
C:\tool\MGLahk140
└─Setup.vbs
└─ ・・・
└─ MouseGestureL.exe
4. 生成した「MouseGestureL.exe」を実行します。
→タスクトレイに「MouseGestureL.ahk」が常駐します。
5. 「MouseGestureL.ahk」を右クリックし、「設定」を選択します。
6. マウスジェスチャーに「タスクビュー」のキーボード操作を割り当てます。
例:RB←
アクションスクリプト
;左デスクトップに移動
SendLevel 1
ctrl := GetKeyState("Ctrl")
shift := GetKeyState("Shift")
win := GetKeyState("LWin")
if (ctrl and shift and win) {
Send,^+#{Left}
} else if (ctrl and shift) {
Send,^+{Left}
} else if (ctrl and win) {
Send,^#{Left}
} else {
Send,^#{Right}
}
RB← + Ctrl + Shift + Win:アクティブ画面を左デスクトップに移動して、左デスクトップに移動
RB← + Ctrl + Shift:アクティブ画面を左デスクトップに移動
RB← + Ctrl + Win:左デスクトップに移動
RB←:右デスクトップに移動
例:RB→
アクションスクリプト
;右デスクトップに移動
SendLevel 1
ctrl := GetKeyState("Ctrl")
shift := GetKeyState("Shift")
win := GetKeyState("LWin")
if (ctrl and shift and win) {
Send,^+#{Right}
} else if (ctrl and shift) {
Send,^+{Right}
} else if (ctrl and win) {
Send,^#{Right}
} else {
Send,^#{Left}
}
RB→ + Ctrl + Shift + Win:アクティブ画面を右デスクトップに移動して、右デスクトップに移動
RB→ + Ctrl + Shift:アクティブ画面を右デスクトップに移動
RB→ + Ctrl + Win:右デスクトップに移動
RB→:左デスクトップに移動
注意事項
上記のアクションスクリプトをそのままコピペする場合は読み飛ばしてください。
MouseGestureL.ahk も AutoHotkey で作成されています。
AutoHotkey 1.0:ASCII版
AutoHotkey 1.1:Unicode版
AutoHotkey 2.0:下位互換なし、レガシーシンタックス廃止版。
MouseGestureL.ahk は、AutoHotkey 1.1 で、「タスクビュー」は、AutoHotkey 2.0 で実行されています。
タスクビュー
https://kozawa.tokyo/?p=1262
通常、AutoHotkeyで生成したキーストロークは、AutoHotkeyでは処理されません。AutoHotkeyでAutoHotkeyのホットキーをトリガーするために、アクションスクリプトでSendする前にSendLevelの指定が必要となります。
SendLevel 1
SendLevel
https://ahkscript.github.io/ja/docs/v2/lib/SendLevel.htm
下位互換はないですが、SendLevel、InputLevelまわりは互換ありです。
7. 「軌跡・ログ」タブで「ジェスチャーの軌跡を表示する」にチェックする。(任意)
8. 「その他」タブで「スタートアップに登録」する。管理者権限は不要です。(任意)
9. 「OK」ボタンをクリックする。
コメントを残す