Eventos#
Introducción#
Los bloques de eventos en VEXcode permiten la programación orientada a eventos, lo que posibilita que diferentes partes de un proyecto se ejecuten en respuesta a desencadenantes como el inicio del proyecto, la recepción de eventos o las interacciones del usuario. A continuación, se muestra una lista de los bloques disponibles:
cuando el temporizador – Ejecuta una pila de bloques después de que el temporizador exceda un tiempo especificado.
cuando se inicia – Ejecuta la pila de bloques adjunta cuando se inicia el proyecto.
cuando recibo un evento – Ejecuta la pila adjunta cuando se transmite un evento específico.
evento de difusión – Activa un evento sin pausar la ejecución.
evento de difusión y espera – Activa un evento y pausa la ejecución hasta que se completen las tareas del evento.
cuando el temporizador#
El bloque temporizador de activación activa la pila de bloques adjunta después de un tiempo determinado.
cuando el temporizador > [1] segundos
Parámetros |
Descripción |
|---|---|
tiempo |
Especifica el número de segundos antes de que comience la pila de bloques adjunta. Admite números enteros y decimales. |
Ejemplo
cuando el temporizador > [2] segundos
[Move the 6-Axis Arm after 2 seconds.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
cuando comenzó#
El bloque when started ejecuta su pila cuando se inicia el proyecto. Puedes tener varios bloques when started para ejecutar varias pilas de bloques a la vez.
cuando empezó
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
Ejemplo
cuando empezó
[Move the 6-Axis Arm 100 millimeters along the x-axis.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
Parámetros |
Descripción |
|---|---|
Este bloque no tiene parámetros. |
cuando recibo el evento#
El bloque cuando recibo un evento inicia una pila cuando se transmite un evento coincidente. Puedes tener varios bloques cuando recibo un evento para ejecutar varias pilas de bloques simultáneamente.
cuando recibo [my_event v]
Parámetros |
Descripción |
|---|---|
evento |
El evento que se va a activar. Los usuarios pueden seleccionar un evento existente, crear uno nuevo, cambiar el nombre del evento seleccionado o eliminarlo. |
Ejemplo
cuando empezó
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
transmisión [move_y v]
cuando recibo [move_y v]
imprimir [Received!] en la consola ◀ y coloque el cursor en la siguiente fila
incrementar la posición [brazo v] en x:[0] y:[100] z:[0] [mm v] ▶
evento de transmisión#
El bloque evento de difusión activa cualquier bloque coincidente cuando recibo evento. No pausa la ejecución de la pila y continúa ejecutando el siguiente bloque inmediatamente.
transmisión [message1 v]
Parámetros |
Descripción |
|---|---|
evento |
El evento que se va a activar. Los usuarios pueden seleccionar un evento existente, crear uno nuevo, cambiar el nombre del evento seleccionado o eliminarlo. |
Ejemplo
cuando empezó
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
transmisión [move_y v]
cuando recibo [move_y v]
imprimir [Received!] en la consola ◀ y coloque el cursor en la siguiente fila
incrementar la posición [brazo v] en x:[0] y:[100] z:[0] [mm v] ▶
evento de transmisión y espera#
El bloque evento de difusión y espera activa un evento y luego pausa la ejecución de la pila actual hasta que todas las pilas de bloques cuando recibo evento activadas se hayan completado.
transmitir [message1 v] y esperar
Parámetros |
Descripción |
|---|---|
evento |
El evento que se va a activar. Los usuarios pueden seleccionar un evento existente, crear uno nuevo, cambiar el nombre del evento seleccionado o eliminarlo. |
Ejemplo
cuando empezó
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
transmitir [move_y v] y esperar
imprimir [Finished moving!] en la consola ◀ y coloque el cursor en la siguiente fila
cuando recibo [move_y v]
imprimir [Received!] en la consola ◀ y coloque el cursor en la siguiente fila
incrementar la posición [brazo v] en x:[0] y:[100] z:[0] [mm v] ▶