概述
最近帮一位朋友的忙,使用eprime2.0软件做了一个行为实验程序。下面将这两天遇到的软件问题和功能整理如下,希望对你有所帮助,可以少走一些弯路。
如果碰到其它问题,欢迎下方留言。
如果对您有所帮助,记得点个赞哦
倒计时功能介绍
Step1: Slide配置
如下图所示,是slide内的显示布局,上方是图片内容,左下角是提示内容文本,右下角是倒计时显示文本。
在进行脚本编写之前,首先需要先配置一下slide的属性值。第一个比较重要的属性是Duration,表示界面的持续时间,这里需要配置为0。另外在Input Mask栏目下的Keyboard属性中的Time Limit设置为infinite
Step2:编写脚本
上述Slide配置完后,添加一个InLine写入如下脚本
/* 将Slide中的Text1文本映射到TextBlock中*/
Set TextBlock = CslideText(Slide1.States.Item("default"). Objects("Text1"))
Do
/*响应按键后退出循环*/
If Slide1.Resp = "w" Then Exit Do
If Slide1.Resp = "p" Then Exit Do
/*获取系统的时间*/
Ts = second(Time)
Tm = minute(Time)
/*判定系统时间是否变化了*/
If Ts <> Ts0 Then
/*倒计时 “秒”的处理*/
if Ts >= SecInit Then
SecDelta = Ts - SecInit
else
SecDelta = Ts - SecInit + 60
end if
/*倒计时 “分”的处理*/
if Ts >= SecInit then
if Tm >= MntInit Then
MntDelta = Tm - MntInit
else
MntDelta = Tm - MntInit + 60
end if
end if
/*分钟超出设定的最大值时,置TimeOutFlag标志为1*/
if cint(MntDelta) >= OverTimeMinute Then
TimeOutFlag = 1
else
/*更新倒计时到Slide中的制定文本*/
TextBlock.Text = "倒计时" + cstr(39 - MntDelta)+ ":" +cstr(59 - SecDelta)
/*刷新图形界面*/
Slide1.Draw
Ts0 = Ts
end if
End If
Loop Until cint(MntDelta) >= OverTimeMinute /*循环退出条件为分钟计时超出阀值*/
/*清除TextBlock制定的文本*/
Set TextBlock = Nothing
最终效果
最后运行效果如下图所示,右下角的倒计时开始运作。