Gomb#
Bevezetés#
A button osztály a controller osztály származtatott osztálya. Hozzáférést biztosít a vezérlő gombjainak állapotaihoz és a gombesemények visszahívásaihoz.
Egy button objektumhoz egy controller objektumon keresztül lehet hozzáférni. Nem közvetlenül konstruálható.

Hozzáférés#
A controller osztály a következő gomb objektumokat biztosítja. Minden objektum a button osztály egy példánya.
Objektum |
Példahasználat |
Leírás |
|---|---|---|
|
|
Az E ▼ gomb. |
|
|
Az E ▲ gomb. |
|
|
Az F ▼ gomb. |
|
|
Az F ▲ gomb. |
|
|
A Bal oldali joystick gomb. Csak IQ (2. generációs) kontrollerrel. |
|
|
Az L ▼ gomb. |
|
|
Az L ▲ gomb. |
|
|
A Jobb oldali joystick gomb. Csak IQ (2. generációs) kontrollerrel. |
|
|
Az R ▼ gomb. |
|
|
Az R ▲ gomb. |
Megjegyzések#
Mielőtt
buttontagfüggvényt használnánk, hozzunk létre egycontrollerobjektumot.ButtonL3ésButtonR3csak az IQ (2. generációs) vezérlőn érhető el.
// Create a controller object
controller Controller = controller();
Tagfüggvények#
A button osztály a következő tagfüggvényeket tartalmazza:
Getter — Olvasás gomb állapota.
pressing— Visszaadja, hogy a gomb le van-e nyomva.
Visszahívások — Függvények futtatása gombesemények bekövetkeztekor.
Getter#
pressing#
pressing megnyomása közötti különbség azt adja vissza, hogy a gomb jelenleg le van-e nyomva.
Elérhető funkció
bool pressing() const;
Paraméterek
Ennek a függvénynek nincsenek paraméterei.
Visszatérési érték
Logikai értéket ad vissza.
true— A gombot megnyomják.false— A gombot nem nyomják meg.
Példa
// Turn right while R Up is pressed
while (true) {
if (Controller.ButtonRUp.pressing()) {
Drivetrain.turn(right);
}
else {
Drivetrain.stop();
}
wait(20, msec);
}
Visszahívások#
pressed#
pressed egy olyan függvényt regisztrál, amely a gomb megnyomásakor fut.
Elérhető funkció
void pressed(void (* callback)(void)) const;
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Egy függvény, amely a gomb megnyomásakor fut. |
Visszatérési érték
Ez a függvény nem ad vissza értéket.
Példa
Definiáld a visszahívó függvényt main változón kívül.
// Drive forward when F Up is pressed
void driveForward() {
Drivetrain.driveFor(forward, 100, mm);
}
Regisztrálja a visszahívást main változón belül.
int main() {
vexcodeInit();
// Run driveForward when F Up is pressed
Controller.ButtonFUp.pressed(driveForward);
}
released#
released egy olyan függvényt regisztrál, amely a gomb elengedésekor fut.
Elérhető funkció
void released(void (* callback)(void)) const;
Paraméter |
Típus |
Leírás |
|---|---|---|
|
|
Egy függvény, amely a gomb elengedésekor fut. |
Visszatérési érték
Ez a függvény nem ad vissza értéket.
Példa
Definiáld a visszahívó függvényt main változón kívül.
// Stop the drivetrain when F Up is released
void stopDriving() {
Drivetrain.stop();
}
Regisztrálja a visszahívást main változón belül.
int main() {
vexcodeInit();
// Run stopDriving when F Up is released
Controller.ButtonFUp.released(stopDriving);
}