
计时器对象
计时器对象在试验期间屏幕上显示可见的倒计时或计时器。它与 Labvanced 事件系统完全集成:您可以使用 StartTimer、PauseTimer 和 ResetTimer 操作控制计时器,并且当它开始、暂停、结束或跨越整秒边界时会触发事件。当前时间值可以作为可读和可写的变量使用,使得基于经过的时间或剩余时间分支实验逻辑变得简单。
添加计时器对象
在任务编辑器工具栏中,打开 Buttons & Navigation 组并选择 Timer 将计时器对象添加到当前框架。

添加元素时,计时器设置向导会自动打开。您可以完成向导以预配置计时器并一步添加常见事件,或点击 Skip 手动配置所有内容。
计时器设置向导
设置向导涵盖最常见的配置选项,并可以为您选择性地添加起始事件。

| 选项 | 描述 |
|---|---|
| 计时器持续时间(秒) | 设置计时器运行的时长。输入正整数。默认是60秒。 |
| 方向性 | Count down 从持续时间开始倒计时计数到0。Count up 从0开始计数到持续时间。 |
| 显示十分之一秒 | 选中时,计时器以 MM:SS.T 格式显示,而不是 MM:SS。 |
| 在帧开始时启动计时器 | 添加一个事件,使得 StartTimer 在帧开始时自动触发。 |
| 计时器结束时跳转到下一个帧 | 添加一个事件,当 TimerEnded 触发时,Jump to Next Frame 触发。 |
您可以跳过任何自动事件,并在事件编辑器中手动配置它们。
对象属性
所有设置均在选择计时器对象时的 对象属性 面板中找到。
计时器设置
| 属性 | 默认 | 描述 |
|---|---|---|
Duration (seconds) | 60 | 计时器运行的总持续时间,以秒为单位。 |
Directionality | 倒计时 | Count down 从持续时间开始倒计时计数到0。Count up 从0开始计数到持续时间。 |
Show tenths of a second | 关闭 | 启用时,计时器以 MM:SS.T 格式显示。关闭时,以 MM:SS 格式显示。运行时无法通过事件修改。 |
Note: Current Time (seconds) 不会出现在属性面板中,但可以在运行时通过 Set Object Property 操作读取和写入。请参阅 将当前时间作为变量使用。

风格
| 属性 | 控制内容 |
|---|---|
Visibility | 不透明度从0(不可见)到1(完全可见)。 |
Border-Size | 边框宽度(以像素为单位)。默认是0(无边框)。 |
Border-Color | 边框颜色。当 Border-Size 为0时,无可见效果。 |
BG-Color | 边框框的背景填充。启用 Transparent 以移除填充。 |
Roundness | 圆角从0(锋利边角)到1(最大圆角:长方形元素为椭圆形,正方形元素为圆形)。 |
自定义 CSS
在样式部分检查 Change CSS Properties 以显示 CSS 文本区域。在那里编写标准的 CSS 规则。Labvanced 自动将每条规则限制在所选对象上,因此您的选择器只会影响该元素的内部 DOM。
样式化时间显示
目标 span 可以更改时间读取的字体、颜色、大小或粗细:
span {
font-size: 3em !important;
color: #c0392b;
font-family: "Courier New", monospace;
font-weight: bold;
letter-spacing: 0.05em;
}

属性优先级说明
在样式面板中设置的背景颜色、边框和边框半径作为内联样式应用于元素,优先于自定义 CSS 规则。如果您需要自定义 CSS 覆盖样式面板的值,请在规则中添加 !important。对于这三项属性,使用样式面板控件通常更简单。
使用操作控制计时器
在事件系统中使用 Control Media Object 操作以编程方式控制计时器。
| 操作 | 功能 |
|---|---|
StartTimer | 从当前位置信息启动计时器。如果计时器已暂停,则从停止的位置恢复。 |
PauseTimer | 在当前位置暂停计时器,而不重置。 |
ResetTimer | 停止计时器并将 Current Time 重置为其起始位置:倒计时的持续时间,计时的起始位置为0。 |
示例:当帧开始时自动启动计时器
触发器:
On Frame Start
操作:Control Media Object→Set Target: 你的计时器对象 →StartTimer
示例:当点击按钮时暂停计时器
触发器:
On Mouse Click→Set Target: 你的暂停按钮
操作:Control Media Object→Set Target: 你的计时器对象 →PauseTimer
从计时器触发事件
计时器对象触发以下触发器,您可以将其用作任何事件中的“何时”条件。
| 触发器 | 触发条件 |
|---|---|
TimerStarted | 当 StartTimer 被调用时,计时器开始运行。 |
TimerPaused | 当 PauseTimer 被调用时,计时器停止。 |
TimerEnded | 当计时器达到结束:倒计时为0,计时为持续时间。 |
TimerThreshold | 每当计时器在运行时跨越整秒边界时触发一次。使用此功能在定期的每秒间隔执行逻辑。 |
示例:当计时器结束时进入下一个帧
触发器:
Media Object Trigger→Set Target: 你的计时器对象 →Execute on:TimerEnded
操作:Jump to Next Frame
示例:每秒记录一个变量
触发器:
Media Object Trigger→Set Target: 你的计时器对象 →Execute on:TimerThreshold
操作:Set / Record Variable→ 你的记录变量
将当前时间作为变量使用
Current Time (seconds) 属性是一个可读和可写的运行时值。您可以使用 Set Object Property 操作将当前时间读取到另一个变量,或将计时器寻址到特定位置。
这使得可行:
- 记录参与者响应时剩余的确切时间
- 基于经过的时间分支实验流程
- 通过将相同的值写入两个计时器来同步它们
示例:在响应时记录剩余时间
触发器:
On Key Press→Set Target: 你的目标键
操作 1:Set / Record Variable→ 创建一个变量(例如time_at_response),值来源:Object Property→Set Target: 你的计时器对象 →Current Time (seconds)
操作 2:Jump to Next Frame
