+
|
←サンプルを表示する |
#SingleInstance, Force
#Persistent
OnMessage(99999, "HidMacros")
Menu, Tray, Add , GetScript
return ; Autoexecセクション はここまで
GetScript: ; スクリプトをクリップボードにコピーする
DetectHiddenWindows, On
SetTitleMatchMode,RegEx
Hwnd := WinExist(".*\\ahk_hidmacros.ahk\s-\sAutoHotkey.* ahk_class AutoHotkey")
WinGetTitle, WinTitle, ahk_id %Hwnd%
Clipboard = hWnd = FindWindow ( "AutoHotkey", `"%WinTitle%`" )
Clipboard = %Clipboard%`nIf hWnd then`n Call PostMessage(hWnd, 99999, 1, 1 )
Clipboard = %Clipboard%`nEnd If
msgbox, %Clipboard%`nをクリップボードにコピーしました。
DetectHiddenWindows, Off
return
; HidMacros( [wParam, lParam, msg, hwnd] ) 引数は省略可
HidMacros(wParam, lParam) { ; 第三と第四引数は必要ないので省く。
If ( wParam = 1 ) { ; USBテンキー① なら
IfWinActive, ahk_class sfl_window_class ; Saiがアクティブなら
{
If ( lParam = 1 ) { ; F13(テンキー1) なら
send, {space down} ; spaceを押し下げる ※Saiなら手のひらツール
keywait, F13 ; F13(テンキーの1)を開放するまで待つ
send, {space up} ; spaceを放す
} Else If ( lParam = 2 ) { ; F14(テンキー2) なら
send, {alt down} ; Altを押し下げる ※Saiならスポイト
keywait, F14 ; F14(テンキー2)を開放するまで待つ
send, {alt up} ; Altを放す
} Else If ( lParam = 3 ) { ; F15(テンキー3) なら
send, {alt down}{space down} ; AltとSpaceを押し下げる ※Saiならビュー回転
keywait, F15 ; F15(テンキー3)を開放するまで待つ
send, {space Up}{alt up} ; AltとSpaceを放す
} Else { ; 他のキーは通常のテンキーにする
Gosub, TenkeyMode
}
} Else { ; Saiが非アクティブなら
Gosub, TenkeyMode
}
} Else If ( wParam = 2 ) { ; USBテンキー②なら
Gosub, TenkeyMode
} Else { ; 他USBデバイスなら
Gosub, TenkeyMode
}
return
TenkeyMode: ; 通常のテンキーにする
tenkeys = Numpad1|Numpad2|Numpad3|Numpad4|Numpad5|Numpad6|Numpad7|Numpad8|Numpad9|Numpad0
tenkeys = %tenkeys%|Numpaddot|Tab|NumpadDiv|NumpadMult|Bs|Numpadsub|Numpadadd|NumpadEnter
Loop, Parse, tenkeys, |
{
If ( lParam = A_Index )
send, {%A_LoopField%}
}
return
}
|