Poga#
Ievads#
button klase ir atvasināta no controller klases. Tā nodrošina piekļuvi kontroliera pogu stāvokļiem un pogu notikumu atzvanīšanas iespējām.
button objektam piekļūst, izmantojot controller objektu. Tas netiek konstruēts tieši.

Piekļuve#
controller klase nodrošina šādus pogu objektus. Katrs objekts ir button klases instance.
Objekts |
Lietošanas piemērs |
Apraksts |
|---|---|---|
|
|
Poga E ▼. |
|
|
Poga E ▲. |
|
|
Poga F ▼. |
|
|
Poga F ▲. |
|
|
Kreisās kursorsviras poga. Tikai IQ (2. paaudzes) kontrolierim. |
|
|
Poga L ▼. |
|
|
Poga L ▲. |
|
|
Labās puses kursorsviras poga. Tikai IQ (2. paaudzes) kontrolierim. |
|
|
Poga R ▼. |
|
|
Poga R ▲. |
Piezīmes#
Pirms
buttondalībnieka funkcijas izmantošanas izveidojietcontrollerobjektu.ButtonL3unButtonR3ir pieejamas tikai IQ (2. paaudzes) kontrolierim.
// Create a controller object
controller Controller = controller();
Dalībnieku funkcijas#
button klase ietver šādas dalībfunkcijas:
Iegūt — Nolasīt pogas stāvokli.
pressing— Atgriež, vai poga tiek nospiesta.
Atzvanīšanas funkcijas — palaist funkcijas, kad notiek pogas notikumi.
Iegūtājs#
pressing#
pressing atgriež, vai poga pašlaik tiek nospiesta.
Pieejamās funkcijas
bool pressing() const;
Parametri
Šai funkcijai nav parametru.
Atgriešanas vērtība
Atgriež Būla vērtību.
true— Poga tiek nospiesta.false— Poga netiek nospiesta.
Piemērs
// Turn right while R Up is pressed
while (true) {
if (Controller.ButtonRUp.pressing()) {
Drivetrain.turn(right);
}
else {
Drivetrain.stop();
}
wait(20, msec);
}
Atzvanīšanas#
pressed#
pressed reģistrē funkciju, kas darbojas, nospiežot pogu.
Pieejamās funkcijas
void pressed(void (* callback)(void)) const;
Parametrs |
Tips |
Apraksts |
|---|---|---|
|
|
Funkcija, kas darbojas, nospiežot pogu. |
Atgriešanas vērtība
Šī funkcija neatgriež vērtību.
Piemērs
Definējiet atzvanīšanas funkciju ārpus main.
// Drive forward when F Up is pressed
void driveForward() {
Drivetrain.driveFor(forward, 100, mm);
}
Reģistrējiet atzvanīšanas signālu main iekšpusē.
int main() {
vexcodeInit();
// Run driveForward when F Up is pressed
Controller.ButtonFUp.pressed(driveForward);
}
released#
released reģistrē funkciju, kas darbojas, kad poga tiek atlaista.
Pieejamās funkcijas
void released(void (* callback)(void)) const;
Parametrs |
Tips |
Apraksts |
|---|---|---|
|
|
Funkcija, kas darbojas, kad poga tiek atlaista. |
Atgriešanas vērtība
Šī funkcija neatgriež vērtību.
Piemērs
Definējiet atzvanīšanas funkciju ārpus main.
// Stop the drivetrain when F Up is released
void stopDriving() {
Drivetrain.stop();
}
Reģistrējiet atzvanīšanas signālu main iekšpusē.
int main() {
vexcodeInit();
// Run stopDriving when F Up is released
Controller.ButtonFUp.released(stopDriving);
}