Botón#
Introducción#
The button class is a derived class of the controller class. It provides access to controller button states and button event callbacks.
A button object is accessed through a controller object. It is not constructed directly.
The IQ (1st gen) Controller has eight main button objects. If an IQ (2nd gen) Controller is connected to the IQ (1st gen) Brain, the joystick buttons ButtonL3 and ButtonR3 can also be used.

Acceso#
The controller class provides the following button objects. Each object is an instance of the button class.
Objeto |
Ejemplo de uso |
Descripción |
|---|---|---|
|
|
El botón E ▼. |
|
|
El botón E ▲. |
|
|
El botón F ▼. |
|
|
El botón F ▲. |
|
|
El botón L ▼. |
|
|
El botón L ▲. |
|
|
El botón R ▼. |
|
|
El botón R ▲. |
|
|
El botón Joystick izquierdo. Solo para el mando IQ (2.ª generación). |
|
|
El botón Joystick derecho. Solo para el mando IQ (2.ª generación). |
Notas#
Before using a
buttonmember function, create acontrollerobject.ButtonL3andButtonR3are only available when an IQ (2nd gen) Controller is connected.
// Create a controller object
controller Controller = controller();
Funciones de los miembros#
The button class includes the following member functions:
Obtenido: lee el estado del botón.
pressing— Returns whether the button is being pressed.
Funciones de devolución de llamada: ejecutan funciones cuando se producen eventos de botón.
Adquiridor#
pressing#
pressing returns whether the button is currently being pressed.
Función disponible
bool pressing() const;
Parámetros
Esta función no tiene parámetros.
Valor de retorno
Devuelve un valor booleano.
true— The button is being pressed.false— The button is not being pressed.
Ejemplo
// Turn right while R Up is pressed
while (true) {
if (Controller.ButtonRUp.pressing()) {
Drivetrain.turn(right);
}
else {
Drivetrain.stop();
}
wait(20, msec);
}
Devoluciones de llamada#
pressed#
pressed registers a function that runs when the button is pressed.
Función disponible
void pressed(void (* callback)(void)) const;
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
Una función que se ejecuta al pulsar el botón. |
Valor de retorno
Esta función no devuelve ningún valor.
Ejemplo
Define the callback function outside of main.
// Drive forward when F Up is pressed
void driveForward() {
Drivetrain.driveFor(forward, 100, mm);
}
Register the callback inside main.
int main() {
vexcodeInit();
// Run driveForward when F Up is pressed
Controller.ButtonFUp.pressed(driveForward);
}
released#
released registers a function that runs when the button is released.
Función disponible
void released(void (* callback)(void)) const;
Parámetro |
Tipo |
Descripción |
|---|---|---|
|
|
Una función que se ejecuta cuando se suelta el botón. |
Valor de retorno
Esta función no devuelve ningún valor.
Ejemplo
Define the callback function outside of main.
// Stop the drivetrain when F Up is released
void stopDriving() {
Drivetrain.stop();
}
Register the callback inside main.
int main() {
vexcodeInit();
// Run stopDriving when F Up is released
Controller.ButtonFUp.released(stopDriving);
}