用按键精灵巧妙获取时间间隔
的有关信息介绍如下:还在苦苦守着电脑,心急如焚看着血条越来越少,等着技能CD冷却然后放大招嘛……
想不想浪漫一把,博得基友欢心,从此只爱你一人?
是不是想说,有DateDiff可以获取时间间隔嘛~~
小编今天给大家带来的,可不是这么简单的命令哦~
要么牛哄哄,要么软趴趴!
调取系统底层API
GetTickCount函数介绍:
GetTickCount返回(retrieve)从操作系统启动所经过(elapsed)的毫秒数,它的返回值是DWORD。
函数声明:
DeclareFunctionGetTickCountLib"kernel32"Alias"GetTickCount"()AsLong
函数范例:计算当前时间和5秒后的时间差
//获取当前时间
TheTime=GetTickCount()
//延时5秒
Delay5000
//再次获取当前时间,计算时间差
TracePrintGetTickCount()-TheTime
运行结果:
获取时间间隔:函数DateDiff与函数GetTickCount()对比
DateDiff只能获取到最小单位为:秒的数值
GetTickCount()可以获取到最小单位为:毫秒的数值
有时候,脚本的成败往往就在毫秒之间!
范例:等图找图大神代码
来看看大神提供的等图找图代码段吧~~
//声明函数GetTickCount
DeclareFunctionGetTickCountLib"kernel32"Alias"GetTickCount"()AsLong
//找出多张图(hsz.bmp、jsj.bmp、ie.bmp)中的其中一张
TracePrint找多图("hsz.bmp|jsj.bmp|ie.bmp")
//延迟5000ms,等待图(hsz.bmp)
TracePrint等图_毫秒("hsz.bmp",5000)
//延迟5000ms,等待多张图(hsz.bmp、jsj.bmp、ie.bmp)中的其中一张
TracePrint等多图_毫秒("hsz.bmp|jsj.bmp|ie.bmp",5000)
Function找多图_数组(图像列表)
找多图_数组=0
Fori=0ToUBound(图像列表)
FindPic0,0,Plugin.Sys.GetScRX-1,Plugin.Sys.GetScRY-1,"Attachment:\"&图像列表(i),1,intX,intY
IfIntX>=0Then
找多图_数组=i+1
ExitFor
EndIf
Next
EndFunction
Function找多图(图像)
找多图=找多图_数组(split(图像,"|"))
EndFunction
Function等图_毫秒(图片,超时时间)//利用两次GetTickCount()得到时间间隔(单位:毫秒)
等图_毫秒=TRUE
开始时间=GetTickCount()
Do
IfGetTickCount()-开始时间>超时时间Then等图_毫秒=FALSE:ExitDo
FindPic0,0,Plugin.Sys.GetScRX-1,Plugin.Sys.GetScRY-1,"Attachment:\"&图片,1,intX,intY
LoopUntilIntX>=0
EndFunction
Function等多图_毫秒(图片,超时时间)//利用两次GetTickCount()得到时间间隔(单位:毫秒)
开始时间=GetTickCount()
Do
IfGetTickCount()-开始时间>超时时间ThenExitDo
等多图_毫秒=找多图(图片)
LoopUntil等多图_毫秒
EndFunction
运行结果: