事件#

简介#

事件是启动一组代码块的信号。VEXcode AIM 中的事件代码块允许不同的代码块组在不同的时间启动。例如,一组代码块可以在项目开始时启动,而另一组代码块可以在收到来自项目其他位置的信号时启动。

当开始#

“启动时”模块会在项目开始时启动其下方的模块。每个项目至少需要一个“启动时”模块——如果没有它,其下方的模块将不会运行。可以使用多个“启动时”模块同时运行不同的模块集。

当开始帽子指令块。#
当开始

参数

描述

该指令块没有参数。

示例

当开始
[Turn around at the start of the project.]
归位至 [180] 度 ▶

当我收到事件#

当收到具有相同事件名称的信号时,当我收到事件帽子模块开始运行其下面的模块广播

当我收到事件帽子指令块。#
当我收到 [my_event v]

参数

描述

事件

将要触发的事件。用户可以选择一个现有事件、创建新事件、重命名选定事件或将其删除。

示例

当开始
[Move forward and turn at the same time.]
等到 <屏幕按下了?>
广播 [movement v] 并等待
当我收到 [movement v]
将 [向前 v] 移至 [50] [毫米 v] ▶
当我收到 [movement v]
[右 v] 转 [90] 度 ▶

广播事件#

广播事件堆栈块会发送一个信号,该信号会启动所有具有相同事件名称的收到事件块。项目中的其他块会继续运行,而无需等待这些块完成。

广播事件指令块。#
广播 [my_event v]

参数

描述

事件

将要触发的事件。用户可以选择一个现有事件、创建新事件、重命名选定事件或将其删除。

示例

当开始
[Display a surprised emoji when the screen is pressed.]
永久循环
如果 <屏幕按下了?> 那么
广播 [emoji_press v]
否则
显示 [emoji_happy v] 看向 [向前 v]
当我收到 [emoji_press v]
显示 [emoji_shocked v] 看向 [向前 v]

广播事件并等待#

广播事件并等待堆栈块会发送一个信号,该信号会启动所有具有相同事件名称的收到事件时块。项目的其余部分将等待广播的事件执行完毕。

广播事件并等待指令段。#
广播 [my_event v] 并等待

参数

描述

事件

将要触发的事件。用户可以选择一个现有事件、创建新事件、重命名选定事件或将其删除。

示例

当开始
[Move after the screen is pressed.]
等到 <屏幕按下了?>
广播 [forward_and_turn v] 并等待
在屏幕上打印 [Movement done.]▶
当我收到 [forward_and_turn v]
将 [向前 v] 移至 [50] [毫米 v] ▶
[右 v] 转 [90] 度 ▶