Painike#
Johdanto#
button -luokka on controller -luokan johdettu luokka. Se tarjoaa pääsyn ohjaimen painikkeiden tiloihin ja painiketapahtumien takaisinkutsuihin.
button -objektiin päästään käsiksi controller -objektin kautta. Sitä ei konstruoida suoraan.

Pääsy#
controller -luokka tarjoaa seuraavat painikeobjektit. Jokainen objekti on button -luokan instanssi.
Esine |
Esimerkki käytöstä |
Kuvaus |
|---|---|---|
|
|
E ▼ -painike. |
|
|
E ▲ -painike. |
|
|
F ▼ -painike. |
|
|
F ▲ -painike. |
|
|
Vasen ohjaussauva-painike. Vain IQ (2. sukupolvi) -ohjaimessa. |
|
|
L ▼ -painike. |
|
|
L ▲ -painike. |
|
|
Oikea ohjaussauva-painike. Vain IQ (2. sukupolvi) -ohjaimessa. |
|
|
R ▼ -painike. |
|
|
R ▲ -painike. |
Muistiinpanoja#
Ennen
button-jäsenfunktion käyttöä luocontroller-objekti.ButtonL3jaButtonR3ovat käytettävissä vain IQ (2. sukupolvi) -ohjaimessa.
// Create a controller object
controller Controller = controller();
Jäsenten toiminnot#
button -luokka sisältää seuraavat jäsenfunktiot:
Getter — Lue-painikkeen tila.
pressing— Palauttaa tiedon siitä, painetaanko painiketta.
Takaisinkutsutoiminnot — Suorita funktioita, kun painiketoimintoja tapahtuu.
Getter#
pressing#
pressing palauttaa tiedon, painetaanko painiketta parhaillaan.
Käytettävissä oleva toiminto
bool pressing() const;
Parametrit
Tällä funktiolla ei ole parametreja.
Palautusarvo
Palauttaa totuusarvon.
true— Painiketta painetaan.false— Painiketta ei paineta.
Esimerkki
// Turn right while R Up is pressed
while (true) {
if (Controller.ButtonRUp.pressing()) {
Drivetrain.turn(right);
}
else {
Drivetrain.stop();
}
wait(20, msec);
}
Takaisinkutsut#
pressed#
pressed rekisteröi funktion, joka suoritetaan, kun painiketta painetaan.
Käytettävissä oleva toiminto
void pressed(void (* callback)(void)) const;
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Toiminto, joka suoritetaan, kun painiketta painetaan. |
Palautusarvo
Tämä funktio ei palauta arvoa.
Esimerkki
Määrittele takaisinkutsufunktio main n ulkopuolella.
// Drive forward when F Up is pressed
void driveForward() {
Drivetrain.driveFor(forward, 100, mm);
}
Rekisteröi takaisinkutsu main -muuttujaan.
int main() {
vexcodeInit();
// Run driveForward when F Up is pressed
Controller.ButtonFUp.pressed(driveForward);
}
released#
released rekisteröi funktion, joka suoritetaan, kun painike vapautetaan.
Käytettävissä oleva toiminto
void released(void (* callback)(void)) const;
Parametri |
Tyyppi |
Kuvaus |
|---|---|---|
|
|
Toiminto, joka käynnistyy, kun painike vapautetaan. |
Palautusarvo
Tämä funktio ei palauta arvoa.
Esimerkki
Määrittele takaisinkutsufunktio main n ulkopuolella.
// Stop the drivetrain when F Up is released
void stopDriving() {
Drivetrain.stop();
}
Rekisteröi takaisinkutsu main -muuttujaan.
int main() {
vexcodeInit();
// Run stopDriving when F Up is released
Controller.ButtonFUp.released(stopDriving);
}