autohotkey实现自动totalcmd 8.52点击未激活提示窗口


最近在学习totalcmd的一些使用,在一些博客里面了解到 

http://thouls.lofter.com/post/20f634_d78725

还可以结合自动点击的功能,由于自己的totalcmd的版本较高,因此他的代码无法正常工作,作为小白,尝试修改下如何能够使之发生效果


1. 首先是下载 autohotkey, 新建一个mystript.ahk


2. 修改后的代码

#t::

Run D:\Program Files\totalcmd\TOTALCMD64.EXE

WinWait, ahk_class TNASTYNAGSCREEN
WinActivate , ahk_class TNASTYNAGSCREEN
;WinWaitActive , ahk_class TNASTYNAGSCREEN , , 0.5

ControlGetText, OutputVar, Window4, ahk_class TNASTYNAGSCREEN

;MsgBox %OutputVar%
if( OutPutVar == 3 )
{
	ControlClick, Button1, ahk_class TNASTYNAGSCREEN	
}else if( OutPutVar == 2 ){
	ControlClick, Button2, ahk_class TNASTYNAGSCREEN
}else{
	ControlClick, Button3, ahk_class TNASTYNAGSCREEN
}

return


由于对autohotkey一点都不了解


#t 是指使用 win + t 作为快捷键

ahk_class TNASTYNAGSCREEN 这个control是通过 autohotkey程序里面 autoit3 window spy


使用方法如下



这样子获取了 totalcmd的 wintile 为 ahk_class TNASTYNAGSCREEN 

“请按下按钮 2 启动程序”, 发现2的位置的control 为 classNN:window4

了解了这些后,就是把他们如何组装起来了,

从 http://ahkcn.github.io/docs/Tutorial.htm 查看里面的API吧,

由于新版的 totalcmd已经禁止了 热键来实现按钮的功能,即不能使用

ControlSend [, Control, Keys, WinTitle, WinText, ExcludeTitle, ExcludeText]
来实现,(如果这样实现,会跳转到一个 页面 ) http://www.ghisler.com/reactivate.htm 


然后想了下,应该换成鼠标点击来替换下 (使用鼠标点击的效果的时候,鼠标不能够移动)

接口如下:

ControlClick [, Control-or-Pos, WinTitle, WinText, WhichButton, ClickCount, Options, ExcludeTitle, ExcludeText]

完成了全部的功能。

你可能感兴趣的:(办公工具)