用AutoHotkey(AHK) 使用滑鼠手勢在win10下快速切換虛擬桌面?

win10預覽版的虛擬桌面很好用,對工作效率提升不少,但是這個快捷鍵需要兩隻手操作,有點麻煩,希望用AutoHotkey做一個利用滑鼠手勢來代替系統快捷鍵的腳本,昨晚找了一下相關的教程,還是搞不定,想請教一下大神們,具體如下:

我想用按住滑鼠右鍵向右拖行一段距離代替ctrl+win+←按住滑鼠右鍵向左拖行一段距離代替ctrl+win+→ 這兩個win10預覽版切換虛擬桌面的快捷鍵。能否告知一下具體的腳本。萬分感謝!(滑鼠手勢 不影響滑鼠正常功能)


關於此工具的另一個回答:Windows 10 上什麼軟體值得推薦? - 許晉的回答

這是我寫的一個工具,只要把滑鼠移到屏幕最下方,再轉動滾輪就可以了。

當然,其他功能還有很多,剪貼板記錄,複製並快速打開或搜索,屏幕的四條邊和四個角都可以有自定義功能,等等。


我已經不用windows很久了,不過這類問題無關平台.試著回答一下.

切換屏幕分幾種場景

1.在鍵盤操作的時候.

這種情況你需要的是快捷鍵,如果覺得系統默認鍵多且沒效率,可以自行定義映射,甚至可以定義成一個鍵(長按).

2.在純滑鼠操作的時候.

這種時候難道不是右手滑鼠,左手通過鍵盤切換更方便一些. 參考1.

當然,如果你用mac,肯定不會問這樣的問題了:)


這個我推薦 專用的滑鼠手勢軟體,而不是AHK

StrokesPlus

比以前的那個經典的Strokes好用. 對系統的支持很好.

上手難度稍微高一些, 操作需要寫代碼. 不過代碼很簡單. 跟ahk差不多.

可以用sendkeys()來發送按鍵.

比如:

acDisplayText("打開QQ消息", "Tahoma", 90, 255, 0, 0, 1000, acGetMouseLocationX(), acGetMouseLocationY())
acSendKeys("%^z")


rbutton::
mousegetpos xpos1,ypos1
settimer,gtrack,1
return

rbutton up::
settimer,gtrack,off
if (gtrack = ""){
Click, Right
}else{
MsgBox, %gtrack%
}
gtrack=
return

gtrack:
mousegetpos xpos2,ypos2
track:=(abs(ypos1-ypos2)&>abs(xpos1-xpos2)) ? (ypos1&>ypos2 ? "u" : "d") : (xpos1&>xpos2 ? "l" : "r")
if (track&<&>SubStr(gtrack, 0)) and (abs(ypos1-ypos2)&>4 or abs(xpos1-xpos2)&>4)
gtrack.=track
xpos1:=xpos2,ypos1:=ypos2
return

esc::exitapp

這絕對是你所需要的,非原創(但是忘記原鏈接了)。

自己稍微改一下就ok了。


作為一個重度滑鼠手勢依賴者,我強烈推薦用國產精品滑鼠手勢軟體 wgestures,一路走來,我用過strokeit,StrokesPlus,等等,相信我


我日常使用wGestures,自定義了兩個手勢分別用來向左,向右切換虛擬桌面,希望能幫到你


如果的你的滾輪支持左右按鍵的話,可以像我這麼設置:

WheelLeft::send,^#{left}
WheelRight::send,^#{right}

個人認為,這是最方便的了。


推薦閱讀:

用AutoHotKey按標題隱藏/顯示Windows桌面窗口
AutoHotKey 常用函數或小技巧有哪些分享?
如何藉助Autohotkey使total commander在單雙窗口間切換?

TAG:快捷鍵 | AutoHotkey | 手勢 | 滑鼠手勢 | Windows10 |