[AHK-] 在PCMan按“【”要换成“[”

楼主: solomn (九米)   2014-01-27 23:12:02
这次很负责的看完一堆AutoHotKey的教学文
才敢来请益XD
但程式码执行有误,请问哪里要改?
想做的是:
当焦点在PCMan时
输入法按“【”会自动换成“[”
//由标题判断使用的程式是不是PCMan
getProgram(sTitle) {
sProgram := ""
iPos := InStr(sTitle, "PCMan Combo")
;MsgBox %iPos%
if iPos > 0
sProgram := "PCMan"
}
return %sProgram%
}
//将“【”换成“[”
~【::
WinGetTitle, sTitle, A
sProgram := getProgram(sTitle)
;MsgBox %sProgram%-%sTitle%
if (sProgram = "PCMan")
Send {[}
return
作者: LPH66 (-6.2598534e+18f)   2014-01-27 23:36:00
“【”这个字不是按键, 你可能需要用 hotstring 式::【:: ←第一行改成这个试试另外 IfWinTitle 接受部份比对, 所以你不必写 getProgram啊, 是 IfWinActive 总之只需要用这个判断后 Send {[} 即可唔, 我似乎没考虑到 SetTitleMatchMode如果有问题就先 SetTitleMatchMode, 2 应该就行了原先的默认 (1) 是比对开头的, 2 则是比对任意地方回头发现我的二楼好像容易令人误会XD 我想讲的是“::【::”
作者: eight0 (欸XD)   2014-01-28 01:50:00
我想hotstring也没办法用在PCMan上原PO可以试试 另外问下输入法是指?

Links booklink

Contact Us: admin [ a t ] ucptt.com