Jika sebuah CLASS ingin bereaksi atas aksi yang dilakukan oleh pemakai(user) melalui keyboard, mouse atau lainnya, maka Java menjawab dengan sistem yang disebut sebagai Event Handling.
Class tersebut harus mengimplementasikan interface yang diasosiasikan dengan event tersebut.
Program atau Interface ini disebut sebagai EventListener, antara lain:
ActionListenerBereaksi atas perubahan komponen , seperti klik mouse atau tombol.
AdjustmentListenerBereaksi atas perubahaan komponen untuk penyesuaian, misalnnya scrollbar yang digerakkan.
FocusListenerEvent yang disebabkan oleh focus pada field, misalnya kursor berada pada field tersebut.
ItemListenerBereaksi pada perubahan checkbox, radiobutton dan lainnya.
KeyListenerBereaksi atas keyboard, misalnya penekanan tombol ALT Ctrl dan lainnya.
WindowsListenerBereaksi atas perubahaan pada window, misalnya diperbesar, diperkecil, digeser atau ditutup.
MouseMotionListenerBereaksi atas pergerakan mouse, misalnya bila melewati area komponen tertentu.
Listeners terdaftar pada java.awt.event.* yang harus disertakan ada class yang menggunakannya.
Setelah komponen dideklarasikan, maka listener dapat ditambahkan pada komponen tersebut, misalnya pada Button:
Jbutton b1=new Jbutton("Tombol"); b1.addActionListener(…)perhatikan bahwa Listener ini harus ditembahkan lebih dahulu kekomponen, sebelum komponen tersebut diletakkan pada Frame/ Content Pane.
Interface Event HandlingClass yang menggunakan listener harus mengimplementasikan satu metoda yang disebut actionPerformed().
Public class MyClass implements ActionListeners {
Public void actionPerformed (ActionEvent ev){ …. …. }
}Variable ActionEvent ev dapat menunjukkan identitas dari mana Event tersebut berasal. Berdasarkan hasil tersebut, maka program dapat memberikan reaksi yang diinginkan
public void actionPerformed(ActionEvent ev) {
Object obyek_asal= ev.getSource(); if(obyek_asal instanceof JButton) {//berasal dari tombol ;
} else if(obyek_asal instanceof JButton) {//berasal dari tombol atau bisa dari textfield dan
//lain2 ;
}
}untuk lebih jelasnya berikut merupakan contoh dari penggunaan ActionListener
import java.awt.*;import java.awt.event.*;import javax.swing.*;public class TombolAksi implements ActionListener{private JFrame layar=new JFrame("action listener");private JButton b1=new JButton("tombol1");private JButton b2=new JButton("tombol2");public TombolAksi(){layar.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);Container c=layar.getContentPane();c.setLayout(new FlowLayout());//menambahkan action listener pada tombolb1.addActionListener(this);b2.addActionListener(this);//-------------------------------c.add(b1);c.add(b2);//mengatur ukuran formlayar.setSize(250,150);//menampilkan formlayar.setVisible(true);}public void actionPerformed(ActionEvent AE){Object obj=AE.getSource();if(obj==b1){layar.setTitle("tombol 1 ditekan");}else if(obj==b2){layar.setTitle("tombol 2 ditekan");}}public static void main(String args[]){new TombolAksi();}}apabila skrip class TombolAksi diatas dicompile dan dijalankan maka akan muncul form action listener dengan dua tombol seperti gambar berikut.

ketika tombol 1 ditekan maka text pada form akan berubah menjadi "tombol 1 ditekan "

ketika tombol 1 ditekan maka text pada form akan berubah menjadi "tombol 2 ditekan "

skrip diatas bisa didownload di download box dalam folder skrip dengan nama TombolAksi.java
bersambung ....