Pendengar acara di Jawa dirancang untuk memproses beberapa jenis acara - "mendengarkan" untuk suatu peristiwa, seperti klik mouse pengguna atau penekanan tombol, dan kemudian merespons sesuai. Pendengar acara harus terhubung ke objek acara yang menentukan acara.
Misalnya, komponen grafis seperti a JButton atau JTextField dikenal sebagai sumber acara. Ini berarti bahwa mereka dapat menghasilkan acara (disebut benda acara), seperti menyediakan a JButton bagi pengguna untuk mengklik, atau JTextField di mana pengguna dapat memasukkan teks. Tugas pendengar acara adalah menangkap peristiwa itu dan melakukan sesuatu dengannya.
Cara Kerja Pendengar Acara
Setiap antarmuka pendengar acara mencakup setidaknya satu metode yang digunakan oleh sumber acara yang setara.
Untuk diskusi ini, mari pertimbangkan acara mouse, mis. Kapan saja pengguna mengklik sesuatu dengan mouse, diwakili oleh kelas Java MouseEvent. Untuk menangani jenis acara ini, Anda harus terlebih dahulu membuat MouseListener kelas yang mengimplementasikan Java
MouseListener antarmuka. Antarmuka ini memiliki lima metode; mengimplementasikan tindakan yang berhubungan dengan jenis tindakan mouse yang Anda antisipasi oleh pengguna Anda. Ini adalah:-
batal mouseKlik (MouseEvent e)
Dipanggil ketika tombol mouse telah diklik (ditekan dan dilepaskan) pada suatu komponen. -
void mouseEntered (MouseEvent e)
Dipanggil ketika mouse memasuki komponen. -
void mouseKeluar (MouseEvent e)
Dipanggil ketika mouse keluar dari komponen. -
void mousePressed (MouseEvent e)
Dipanggil ketika tombol mouse ditekan pada suatu komponen. -
void mouseReleased (MouseEvent e)
Dipanggil ketika tombol mouse dilepaskan pada suatu komponen
Seperti yang Anda lihat, setiap metode memiliki parameter objek acara tunggal: peristiwa mouse tertentu yang dirancang untuk ditangani. Di Anda MouseListener kelas, kamu daftar untuk "mendengarkan" salah satu dari peristiwa ini sehingga Anda diberi tahu kapan peristiwa itu terjadi.
Saat acara diaktifkan (misalnya, pengguna mengklik mouse, sesuai mouseClicked () metode di atas), yang relevan MouseEvent objek yang mewakili peristiwa itu dibuat dan diteruskan ke MouseListener objek terdaftar untuk menerimanya.
Jenis Pendengar Acara
Pendengar acara diwakili oleh antarmuka yang berbeda, masing-masing dirancang untuk memproses acara yang setara.
Perhatikan bahwa pendengar acara fleksibel karena pendengar tunggal dapat didaftarkan untuk "mendengarkan" berbagai jenis acara. Ini berarti bahwa, untuk serangkaian komponen serupa yang melakukan jenis tindakan yang sama, satu pendengar peristiwa dapat menangani semua peristiwa.
Berikut adalah beberapa jenis yang paling umum:
- Daftar Tindakan: Mendengarkan sebuah ActionEvent, mis. ketika elemen grafis diklik seperti tombol atau item dalam daftar.
- ContainerListener: Mendengarkan a ContainerEvent, yang mungkin terjadi jika pengguna menambah atau menghapus objek dari antarmuka.
- Daftar kunci: Mendengarkan a KeyEvent di mana pengguna menekan, mengetik atau melepaskan kunci.
- Daftar Jendela: Mendengarkan a WindowEvent, misalnya, ketika jendela ditutup, diaktifkan atau dinonaktifkan.
- MouseListener: Mendengarkan a MouseEvent, seperti ketika mouse diklik atau ditekan.