使用WinClip達成內建剪貼簿功能無法達到的功能。
內建的Clipboard
要取得被選取文字時必須先送出〔Ctrl+c〕將字串複製到系統剪貼簿。
^+g::
current_clipboard = %Clipboard% ; 把目前的剪貼簿內容存起來供後面還原
Send ^c ; 把選取字串用〔Ctrl+C〕存入剪貼簿
ClipWait,1
; 下行使用Google執行搜尋動作,要搜尋的字串就是剪貼簿內容
Run http://www.google.com.tw/search?hl=zh-TW&q=%Clipboard%
Clipboard = %current_clipboard% ; 還原先前的剪貼簿內容
return
範例
在瀏覽器選取一個英文單字,按〔Ctrl+Alt+T〕後開啟英翻中網站,直接顯示單字的中文釋義
- 困難點:如何在不影響現有系統剪貼簿而取得被選取文字?
選取文字若不存入剪貼簿則AutoHotkey無法取得內容。內建功能無法達成此需求,只能使用WinClip類別。
WinClip的使用
- 下載 WinClip
- 由作者網站下載 WinClip.zip
- 解壓縮到本機
- 引入winclipAPI.ahk與WinClip.ahk
#include 解壓縮資料夾/WinclipAPI.ahk
#include 解壓縮資料夾/Winclip.ahk
- 有兩種使用WinClip函數的方法
- 靜態方法:可想像為共用的唯一系統剪貼簿
- 實例方法:可視為自訂的剪貼簿,不影響系統剪貼簿的內容
- 範例:
; 靜態使用方法,不必定義WinClip實例
WinClip.Copy()
text := WinClip.GetText() ; 取得剪貼簿最後一項之內容
; 實例使用方法,必須宣告並定義WinClip,函數名稱多一個 i
wc := new WinClip
wc.iCopy() ; 複製選取文字到專屬空間
text := wc.iGetText() ; 由當前實例的空間取出剪貼簿內容
選取文字
^!t::
wc := new WinClip
wc.iCopy()
t := wc.iGetText()
;;MsgBox text=%t%
Run https://tw.dictionary.search.yahoo.com/search?p=%t%&fr=sfp&iscqry=
return
相關連結
test19.ahk
解說影片
##
您可能也會有興趣的類似文章
- 輕鬆學會彈指神功-揭露AutoHotkey絕技 (59則留言, 2008/04/10)
- [Tools] 操作熱鍵與熱字串的超便利工具:AutoHotKey (13則留言, 2005/04/29)
- [Tools] 常用的AutoHotKey設定 (9則留言, 2005/05/12)
- 幾個AutoHotkey的實用範例:音量控制、滾輪回上層與語音功能(AHK #7) (0則留言, 2019/06/05)
- AutoHotkey輸出中文的方法 (18則留言, 2008/03/01)
- 輕鬆學會AutoHotkey的熱鍵:熱鍵用法實例解說(AHK #4) (0則留言, 2019/05/24)
- 快速建立個人常用詞庫-AutoHotkey 熱字串小工具:HotString Helper(AHK #3) (0則留言, 2019/05/18)
- 改寫AutoHotkey輸出中文字串的寫法 (4則留言, 2009/06/20)
- AutoHotkey腳本的4種除錯方法(AHK #5) (0則留言, 2019/05/25)
- PhraseExpress:凡人版的AutoHotkey [修訂] (0則留言, 2009/11/28)
- 用AutoHotkey輕鬆製作螢幕小鍵盤 (16則留言, 2008/03/16)
- 支援Unicode的Autohotkey終於浮上抬面! (1則留言, 2010/10/16)
- 用AutoHotkey統一不同工具的偵錯功能鍵 (0則留言, 2008/03/19)
- 11. AutoHotkey腳本產生網站介紹-用點選、拖拉和拼接迅速產生腳本! (0則留言, 2019/10/09)
- [Tools] 續:撰寫AutoHotKey指令以複製檔案 (0則留言, 2005/06/12)