Mygtukas#
Įvadas#
button klasė yra išvestinė iš controller klasės. Ji suteikia prieigą prie valdiklio mygtukų būsenų ir mygtukų įvykių atšaukimų.
button objektas pasiekiamas per controller objektą. Jis nėra konstruojamas tiesiogiai.

Prieiga#
controller klasė teikia šiuos mygtukų objektus. Kiekvienas objektas yra button klasės egzempliorius.
Objektas |
Naudojimo pavyzdys |
Aprašymas |
|---|---|---|
|
|
Mygtukas E ▼. |
|
|
Mygtukas E ▲. |
|
|
Mygtukas F ▼. |
|
|
Mygtukas F ▲. |
|
|
Kairioji valdymo svirtis. Tik IQ (2-osios kartos) valdikliui. |
|
|
Mygtukas L ▼. |
|
|
Mygtukas L ▲. |
|
|
Dešinysis valdymo svirties mygtukas. Tik IQ (2-osios kartos) valdikliui. |
|
|
Mygtukas R ▼. |
|
|
Mygtukas R ▲. |
Pastabos#
Prieš naudodami
buttonnario funkciją, sukurkitecontrollerobjektą.ButtonL3irButtonR3galimi tik IQ (2-osios kartos) valdiklyje.
// Create a controller object
controller Controller = controller();
Narių funkcijos#
button klasė apima šias narines funkcijas:
Getter – skaitymo mygtuko būsena.
pressing— Grąžina, ar mygtukas yra paspaudžiamas.
Atgaliniai iškvietimai – vykdyti funkcijas, kai įvyksta mygtuko įvykiai.
Getteris#
pressing#
pressing grąžina, ar mygtukas šiuo metu yra paspaustas.
Galima funkcija
bool pressing() const;
Parametrai
Ši funkcija neturi parametrų.
Grąžinimo vertė
Grąžina loginę reikšmę.
true— Mygtukas yra paspaudžiamas.false— Mygtukas nespaudžiamas.
Pavyzdys
// Turn right while R Up is pressed
while (true) {
if (Controller.ButtonRUp.pressing()) {
Drivetrain.turn(right);
}
else {
Drivetrain.stop();
}
wait(20, msec);
}
Atgaliniai skambučiai#
pressed#
pressed užregistruoja funkciją, kuri paleidžiama paspaudus mygtuką.
Galima funkcija
void pressed(void (* callback)(void)) const;
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Funkcija, kuri paleidžiama paspaudus mygtuką. |
Grąžinimo vertė
Ši funkcija negrąžina reikšmės.
Pavyzdys
Apibrėžkite grįžtamojo ryšio funkciją už main ribų.
// Drive forward when F Up is pressed
void driveForward() {
Drivetrain.driveFor(forward, 100, mm);
}
Užregistruokite atgalinį iškvietimą main viduje.
int main() {
vexcodeInit();
// Run driveForward when F Up is pressed
Controller.ButtonFUp.pressed(driveForward);
}
released#
released užregistruoja funkciją, kuri paleidžiama atleidus mygtuką.
Galima funkcija
void released(void (* callback)(void)) const;
Parametras |
Tipas |
Aprašymas |
|---|---|---|
|
|
Funkcija, kuri paleidžiama atleidus mygtuką. |
Grąžinimo vertė
Ši funkcija negrąžina reikšmės.
Pavyzdys
Apibrėžkite grįžtamojo ryšio funkciją už main ribų.
// Stop the drivetrain when F Up is released
void stopDriving() {
Drivetrain.stop();
}
Užregistruokite atgalinį iškvietimą main viduje.
int main() {
vexcodeInit();
// Run stopDriving when F Up is released
Controller.ButtonFUp.released(stopDriving);
}