
定时器对象
定时器对象在试验期间在屏幕上显示可见的倒计时或计时器。它与 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;
color: #c0392b;
font-family: "Courier New", monospace;
font-weight: bold;
letter-spacing: 0.05em;
}

关于属性优先级的说明
在样式面板中设置的背景颜色、边框和边框半径作为内联样式应用于元素,优先于自定义 CSS 规则。如果您希望自定义 CSS 覆盖样式面板的值,请将 !important 添加到您的规则中。对于这三个属性,使用样式面板控制通常更简单。
使用操作控制定时器
使用事件系统中的 Control Element 操作以编程方式控制定时器。
| 操作 | 功能 |
|---|---|
StartTimer | 从当前状态启动定时器。如果定时器已暂停,则从停止的地方继续。 |
PauseTimer | 在当前状态下暂停定时器,而不重置。 |
ResetTimer | 停止定时器并将 Current Time 重置为其起始位置:倒计时为持续时间,计时向上为 0。 |
示例:当帧开始时自动启动定时器
触发器:
On Frame Start
操作:Control Element→Set Target:您的定时器对象 →StartTimer
示例:当点击按钮时暂停计时器
触发器:
On Mouse Click→Set Target:您的暂停按钮
操作:Control Element→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
