Χρήση συμβάντων#

Using Events

Αυτό το σεμινάριο καλύπτει τον τρόπο χρήσης συμβάντων στο VEXcode V5. Μέχρι το τέλος, θα ξέρετε πώς να μεταδώσετε ένα συμβάν και να έχετε μια άλλη στοίβα μπλοκ να ανταποκρίνεται σε αυτό.

Τα Συμβάντα επιτρέπουν σε ξεχωριστές στοίβες μπλοκ σε ένα έργο να επικοινωνούν μεταξύ τους, χρησιμοποιώντας μπλοκ από την κατηγορία Λογική - Συμβάντα. ​​Τα μπλοκ των οποίων τα ονόματα αρχίζουν με μετάδοση σηματοδοτούν ότι έχει συμβεί ένα συμβάν και τα μπλοκ των οποίων τα ονόματα αρχίζουν με όταν εκτελούν τη συνδεδεμένη στοίβα μπλοκ σε απόκριση.

Προσθέστε ένα μπλοκ μετάδοσης ή ένα μπλοκ μετάδοσης και αναμονής στο έργο σας.

Στιγμιότυπο οθόνης της κατηγορίας εργαλειοθήκης Λογική - Συμβάντα, με επισημασμένα τα μπλοκ μετάδοσης και μετάδοσης και αναμονής.

Επιλέξτε το αναπτυσσόμενο μενού στο μπλοκ μετάδοση για να επιλέξετε ένα υπάρχον συμβάν ή για να δημιουργήσετε, να μετονομάσετε ή να διαγράψετε ένα συμβάν.

Στιγμιότυπο οθόνης του αναπτυσσόμενου μενού του μπλοκ μετάδοσης, που εμφανίζει την επιλογή my_event μαζί με τις επιλογές Νέο συμβάν, Μετονομασία συμβάντος και Διαγραφή του συμβάντος "my_event".

Προσθέστε ένα μπλοκ όταν λαμβάνω στον χώρο εργασίας και ορίστε το αναπτυσσόμενο μενού του ώστε να ταιριάζει με το όνομα του συμβάντος που χρησιμοποιείται στο μπλοκ μετάδοσης. Στη συνέχεια, επισυνάψτε μπλοκ από κάτω, καθώς αυτά τα μπλοκ θα εκτελούνται κάθε φορά που μεταδίδεται το συγκεκριμένο συμβάν.

Στιγμιότυπο οθόνης της κατηγορίας εργαλειοθήκης Λογική - Συμβάντα, με επισημασμένα τα μπλοκ όταν ξεκινούν και πότε λαμβάνω.

Μόλις ένα μπλοκ όταν λαμβάνω ταιριάζει με το όνομα συμβάντος που χρησιμοποιείται από ένα μπλοκ μετάδοσης, η εκτέλεση του έργου επιτρέπει και στις δύο στοίβες να εκτελούνται ταυτόχρονα. Για παράδειγμα, αυτό το έργο εκτελείται μέχρι να πατηθεί η οθόνη του Εγκεφάλου και, στη συνέχεια, μεταδίδει ένα συμβάν που σταματά το ρομπότ από το να κινηθεί.

Όταν ξεκινήσει, περιστρέφεται μέχρι να πατηθεί η οθόνη και, στη συνέχεια, μεταδίδει ένα συμβάν που σταματά το ρομπότ όταν ληφθεί.#
when started
turn [right v]
wait until <screen pressed?>
broadcast [my_event v]
when I receive [my_event v]
stop driving

Τα μπλοκ που ξεκινούν με when μπορούν επίσης να βρεθούν συνδεδεμένα με αισθητήρες, εκτελώντας τα συνδεδεμένα μπλοκ τους όποτε πληρούται η συνθήκη αυτού του αισθητήρα. Για παράδειγμα, τα μπλοκ hat when Brain screen και when Bumper Switch.

Το μπλοκ καπέλο οθόνης when Brain.#
when Brain screen [pressed v] :: hat events
Το μπλοκ καπέλο διακόπτη προφυλακτήρα όταν.#
when [BumperA v] [pressed v] :: hat events