您的位置首页百科知识

用按键精灵巧妙获取时间间隔

用按键精灵巧妙获取时间间隔

的有关信息介绍如下:

用按键精灵巧妙获取时间间隔

还在苦苦守着电脑,心急如焚看着血条越来越少,等着技能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

运行结果: