经过自己一些时间的实践与反馈,又有了许多心得,因此再为这个写一篇文章。
第一篇文章里的两个问题基本得到了解决:( [A2]更快的使用你的键盘:AutoHotkey)
第一个问题:中文乱码问题,一种方案是采用剪切板来实现,另一种是让按键对应于一种输入法的按键顺序。Autohotkey所发送的本来就是一个一个按键操作,这一点我在上一次写文章的时候并没有体会清楚。
第二个问题:窗口最大最小的切换,最后找到了获取这个状态的函数。用WinGet, Style, Style, A得到当然窗口的状态,用语句Style & 0x1000000获得窗口是否处于最大化状态。具体见最后贴的代码。
另外,我上论坛浏览了一下别人分享的代码,看到了许多写得很棒的代码。比如说,有一个可以进行自动扫雷,结果我电脑上现在的扫雷记录:高级是14秒...详见http://ahk.5d6d.com/viewthread.php?tid=1921&extra=page%3D4%26amp%3Borderby%3Dreplies
最后把我自己写的代码贴出来,前面的两个include文件是从AutoHotkey论坛上找到的,因此未贴出来。另外,我是一个大四学生,因此主要是针对我自己的日常操作。 希望能对大家有所帮助。
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;AutoHotkey配置文件
;by JerryHe Nov 29,2009
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
#include UseRBottomAttF4.ahk
#include OnekeyActiveDirofSoftware.ahk
;设置启动目录
PROGRAMDIR:="D:\MyProgramFiles"
;按住Alt,类似Vim方向操作
LAlt & j::send {down}
LAlt & k::send {up}
LAlt & h::send {left}
LAlt & l::send {right}
#n::run gvim
#c::run PowerCalc.exe
#m::
WinGet, Style, Style, A
if (Style & 0x1000000)
{
WinRestore,A
}
else
{
WinMaximize,A
}
return
#o:: ;切换到Lingoes
IfWinExist Lingoes
{
WinActivate
}
else
{
Run %PROGRAMDIR%\Lingoes
WinWait Lingoes
WinActivate
}
return
#p:: ;切换到Snagit
IfWinExist Snagit
{
WinActivate
}
else
{
Run %PROGRAMDIR%\Snagit
WinWait Snagit
WinActivate
}
return
;常用目录启动
#7::run %PROGRAMDIR%\startDesktop.bat
#8::run %PROGRAMDIR%\startWorkdir.bat
#9::run %PROGRAMDIR%\startCourse2009dir.bat
#0::run %PROGRAMDIR%\startThisdir.bat
;常用组合键
RShift & m:: ;在Word里插入Mathtype字符
SetKeyDelay,50
send {alt}YY01
return
RShift & f:: ;Create a new folder
SetKeyDelay,50
send {alt}FWFW
return
RShift & d:: ;回退目录
send cd.. {Enter}
return