按钮#
介绍#
The button class is derived from the brain base class and provides access to the EXP Brain’s buttons, allowing your robot to detect when its buttons are pressed and released.
使用权#
The button class provides three button objects. Each object is an instance of the button class and can be accessed through a brain instance.
目的 |
用法示例 |
描述 |
|---|---|---|
|
|
勾选按钮 |
|
|
左键 |
|
|
右键 |
成员功能#
The button class includes the following member functions:
pressing— Returns whether or not the specified button is being pressed.pressed— Registers a function to be called when the specified button is pressed.released— Registers a function to be called when the specified button is released.
Before calling any button member functions, a brain instance must be created, as shown below:
// Create the EXP Brain
brain Brain = brain();
紧迫#
返回特定大脑按钮当前是否被按下。
Available Functionsbool pressing() const;
此函数不接受任何参数。
Return Values返回一个整数,指示指定的按钮是否被按下:
1— The button is being pressed.0— The button is not being pressed.
这个函数可以对任何按钮对象调用,例如:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
// Turn right while the check button is pressed
while (true) {
if (Brain.buttonCheck.pressing()) {
Drivetrain.turn(right);
} else {
Drivetrain.stop();
}
wait(5, msec);
}
按下#
注册一个回调函数,当按下特定的脑部按钮时运行该函数。
Available Functionsvoid pressed(
void (* callback)(void) ) const;
范围 |
类型 |
描述 |
|---|---|---|
|
|
按下指定按钮时调用的函数。 |
此函数不返回值。
Examples这个函数可以对任何大脑按钮对象调用,例如:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Define the callback function (outside of
int main())// Drive forward when the right button is pressed void driveForward() { Drivetrain.driveFor(forward, 100, mm); }Register the callback inside
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Call driveForward when the right button is pressed Brain.buttonRight.pressed(driveForward); }
发布#
注册一个回调函数,当特定的脑部按钮被释放时,该函数将运行。
Available Functionsvoid released(
void (* callback)(void) ) const;
范围 |
类型 |
描述 |
|---|---|---|
|
|
当指定的按钮被释放时,将调用该函数。 |
此函数不返回值。
Examples这个函数可以对任何大脑按钮对象调用,例如:
Brain.buttonCheckBrain.buttonLeftBrain.buttonRight
Define the callback function (outside of
int main())// Drive backward when the left button is released void backUp() { Drivetrain.driveFor(reverse, 100, mm); }Register the callback inside
int main()int main() { /* vexcodeInit() is only required when using VEXcode. Remove vexcodeInit() if compiling in VS Code. */ vexcodeInit(); // Call backUp when the left button is released Brain.buttonLeft.released(backUp); }