Ereignisse verwenden#

Using Events

Dieses Tutorial erklärt die Verwendung von Ereignissen in VEXcode IQ (2. Generation). Am Ende wissen Sie, wie Sie ein Ereignis auslösen und wie ein anderer Blockstapel darauf reagiert.

Ereignisse ermöglichen es separaten Blockstapeln in einem Projekt, mithilfe von Blöcken der Kategorie Logik – Ereignisse miteinander zu kommunizieren. Blöcke, deren Namen mit broadcast beginnen, signalisieren das Eintreten eines Ereignisses, und Blöcke, deren Namen mit when beginnen, führen daraufhin ihren zugehörigen Blockstapel aus.

Fügen Sie Ihrem Projekt einen Broadcast-Block oder einen Broadcast and Wait-Block hinzu.

Screenshot der Toolbox-Kategorie Logik - Ereignisse, wobei die Blöcke „Broadcast“ und „Broadcast und Warte“ hervorgehoben sind.

Wählen Sie im Broadcast-Block das Dropdown-Menü aus, um ein vorhandenes Ereignis auszuwählen oder ein Ereignis zu erstellen, umzubenennen oder zu löschen.

Screenshot des geöffneten Dropdown-Menüs des Broadcast-Blocks, das die Option „my_event“ sowie die Optionen „Neues Ereignis“, „Ereignis umbenennen“ und „Ereignis „my_event“ löschen“ anzeigt.

Fügen Sie dem Arbeitsbereich einen Wenn ich empfange-Block hinzu und legen Sie in dessen Dropdown-Menü den Ereignisnamen fest, der im Senden-Block verwendet wird. Fügen Sie anschließend darunterliegende Blöcke hinzu, die immer dann ausgeführt werden, wenn dieses Ereignis gesendet wird.

Screenshot der Toolbox-Kategorie Logik - Ereignisse, wobei die Blöcke "Wenn gestartet" und "Wenn ich empfange" hervorgehoben sind.

Sobald ein wenn ich empfange-Block mit dem Ereignisnamen eines Sende-Blocks übereinstimmt, können beide Stacks gleichzeitig ausgeführt werden. Beispielsweise dreht sich der Roboter, bis die Taste „Gehirnprüfung“ gedrückt wird, und sendet dann ein Ereignis, das die Fahrt des Roboters stoppt.

Nach dem Start dreht sich der Roboter, bis die Taste „Check“ gedrückt wird. Anschließend sendet er ein Ereignis, das den Roboter stoppt, sobald es empfangen wird.#
wenn gestartet
drehe [rechts v]
warte bis <Brain [Prüfen v] Taste gedrückt?>
sende [my_event v]
wenn ich [my_event v] empfange
Fahren stoppen

Blöcke, die mit wenn beginnen, finden sich auch in anderen Gerätekategorien und führen die zugehörigen Blöcke aus, sobald die Bedingung des jeweiligen Geräts erfüllt ist. Beispiele hierfür sind die Blöcke wenn Gehirn-Taste und wenn Stoßstange.

Der „Wenn Gehirn“-Knopf-Hutblock.#
wenn Brain [◀ v] Taste [gedrückt v]
Der „When Bumper“-Hutblock.#
wenn [Bumper1 v] [gedrückt v]