Tombol#
Perkenalan#
Kelas button adalah kelas turunan dari kelas controller. Kelas ini menyediakan akses ke status tombol controller dan callback event tombol.
Objek tombol button diakses melalui objek pengontrol controller Objek ini tidak dibuat secara langsung.

Mengakses#
Kelas controller menyediakan objek tombol berikut. Setiap objek merupakan instance dari kelas button.
Obyek |
Contoh Penggunaan |
Keterangan |
|---|---|---|
|
|
Tombol E ▼. |
|
|
Tombol E ▲. |
|
|
Tombol F ▼. |
|
|
Tombol F ▲. |
|
|
Tombol Joystick Kiri. Hanya untuk Controller IQ (generasi ke-2). |
|
|
Tombol L ▼. |
|
|
Tombol L ▲. |
|
|
Tombol Joystick Kanan. Hanya untuk Controller IQ (generasi ke-2). |
|
|
Tombol R ▼. |
|
|
Tombol R ▲. |
Catatan#
Sebelum menggunakan fungsi anggota tombol
button, buat objek pengontrolcontroller.ButtonL3danButtonR3hanya tersedia pada Controller IQ (generasi ke-2).
// Create a controller object
controller Controller = controller();
Fungsi Keanggotaan#
Kelas button mencakup fungsi anggota berikut:
Getter — Membaca status tombol.
pressing— Mengembalikan apakah tombol sedang ditekan.
Callback — Menjalankan fungsi saat terjadi peristiwa tombol.
Pencari#
pressing#
Menekan pressing akan mengembalikan informasi apakah tombol sedang ditekan atau tidak.
Fungsi yang Tersedia
bool pressing() const;
Parameter
Fungsi ini tidak memiliki parameter.
Nilai Kembalian
Mengembalikan nilai Boolean.
true— Tombol sedang ditekan.false— Tombol tidak ditekan.
Contoh
// Turn right while R Up is pressed
while (true) {
if (Controller.ButtonRUp.pressing()) {
Drivetrain.turn(right);
}
else {
Drivetrain.stop();
}
wait(20, msec);
}
Panggilan balik#
pressed#
pressed mendaftarkan fungsi yang berjalan saat tombol ditekan.
Fungsi yang Tersedia
void pressed(void (* callback)(void)) const;
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Sebuah fungsi yang dijalankan saat tombol ditekan. |
Nilai Kembalian
Fungsi ini tidak mengembalikan nilai.
Contoh
Definisikan fungsi callback di luar main.
// Drive forward when F Up is pressed
void driveForward() {
Drivetrain.driveFor(forward, 100, mm);
}
Daftarkan callback di dalam main.
int main() {
vexcodeInit();
// Run driveForward when F Up is pressed
Controller.ButtonFUp.pressed(driveForward);
}
released#
released mendaftarkan sebuah fungsi yang akan dijalankan saat tombol dilepas.
Fungsi yang Tersedia
void released(void (* callback)(void)) const;
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Sebuah fungsi yang dijalankan saat tombol dilepas. |
Nilai Kembalian
Fungsi ini tidak mengembalikan nilai.
Contoh
Definisikan fungsi callback di luar main.
// Stop the drivetrain when F Up is released
void stopDriving() {
Drivetrain.stop();
}
Daftarkan callback di dalam main.
int main() {
vexcodeInit();
// Run stopDriving when F Up is released
Controller.ButtonFUp.released(stopDriving);
}