SELAMAT DATANG
DI WILAYAH TERITORIAL
KEKUASAAN SAYA
^_^

Kamis, 17 Januari 2013

event handling

Event Handling pada JAVA Event berguna untuk menangani interaksi user dengan program, misalnya user memilih sebuah menu dalam aplikasi MIDlet.Untuk menangani event perlu mengimplementasikan interface CommandListener dan atau ItemListener. CommandListener berfungsi untuk menangani jika user memilih Command tertentu sedangkan ItemListener berfungsi untuk menangani jika user mengubah nilai sepert misalnya mengubah pilihan pada ChoiceGroup. Delegation Event Model Delegasi event model menguraikan bagaimana program Anda dapat merespon interaksi dari user. Untuk memahami model, pertama-tama mari kita pelajari melalui tiga komponen utamanya. 1. Event Source Event source mengacu pada komponen GUI yang meng-generate event. Sebagai contoh, jika user menekan tombol, event source dalam hal ini adalah tombol. 2. Event Listener/Handler Event listener menerima berita dari event-event dan proses-proses interaksi user. Ketika tombol ditekan, listener akan mengendalikan dengan menampilkan sebuah informasi yang berguna untuk user. 3. Event Object Ketika sebuah event terjadi (misal, ketika user berinteraksi dengan komponen GUI), sebuah object event diciptakan. Object berisi semua informasi yang perlu tentang event yang telah terjadi. Informasi meliputi tipe dari event yang telah terjadi, seperti ketika mouse telah di-klik. Ada beberapa class event untuk kategori yang berbeda dari user action. Sebuah event object mempunyai tipe data mengenai salah satu dari class ini. setiap event object mempunyai type event yang berbdea beda. sehingga kita harus menentukan type event sebelum menentukan jenis interface listener. karena setiap type event mempunyai jenis interface listener yang bersesuaian. berikut ini type type event yang ada di Java : -ActionEvent -ItemEvent -WindowEvent -ContainerEvent -ComponentEvent -FocusEvent -TextEvent -KeyEvent -MouseEvent -AdjustmentEvent Berikut ini Interface Listener : -ActionListener -ItemListener -WindowListener -ContainerListener -CompnnentListener -FocusListener -TextListener -KeyListener -MouseListener -MouseMotionListener -AdjustmentListener Berdasarkan tulisan diatas, setiap type event mempunyai satu jenis interface listener kecuali MouseEvent yang mempunyai dua jenis interface listener. dan setiap interface mempunyai method abstract yang harus di override class yang meng-impletasikan interface. event listener dan event handler terdapat pada package java.awt.event Bagaimana event handling dalam Java? ada tiga langkah penting dalam event handling Deklarasikan class yang akan meng-handle event yang terjadi dan tuliskan code yang menyatakan class tersebut meng-implement interface listener Event source mendaftarkan sebuah listener melalui method addListener Kode yang mengimplementasikan method pada interface listener pada class yang akan meng-handle event. [ Override ] contoh program : import java.awt.*; import java.awt.event.*; import javax.swing.*; public class ClickMe3 extends JFrame { private JButton tombol, btnExit; public ClickMe3() { super ("Event Handling"); Container container = getContentPane(); container.setLayout(new FlowLayout()); ClickListener cl = new ClickListener (); tombol = new JButton ("Click Me!"); tombol.addActionListener(cl); container.add(tombol); btnExit = new JButton ("Exit"); btnExit.addActionListener(cl); container.add(btnExit); setSize (200,100); setVisible (true); } public static void main (String arg[]) { ClickMe3 test = new ClickMe3(); test.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } //inner class private class ClickListener implements ActionListener { public void actionPerformed (ActionEvent e) { if (e.getSource() == tombol) { JOptionPane.showMessageDialog(null, "You click me again, guys !!!"); } else if (e.getSource() == btnExit){ if ( JOptionPane.showConfirmDialog(null, "Apakah Anda yakin akan keluar ?","Konfirmasi", JOptionPane.OK_CANCEL_OPTION,JOptionPane.QUESTION_MESSAGE) == JOptionPane.OK_OPTION) { System.exit(0); } } } } }

Tidak ada komentar:

Posting Komentar

Ada kesalahan di dalam gadget ini