Transcript
Page 1: Pemrograman JAVA (TIB09)

Pemrograman JAVA (TIB09)

Event Handling

Page 2: Pemrograman JAVA (TIB09)

Even Handling pada JAVA

• Untuk menangani aksi yang dilakukan oleh user terhadap GUI ada beberapa cara yang dilakukan JAVA yang semuanya diaplikasikan dengan interface Event Listener

terdapat pada java.awt.event.*

• Setelah komponen dideklarasikan, listener dapat ditambahkan pada komponen tsb

Page 3: Pemrograman JAVA (TIB09)

• Untuk memastikan komponen mana saja yang mengimplementasikan class-class turunan EvenHandling ini, sebaiknya dipastikan pada java api docs nya.

Page 4: Pemrograman JAVA (TIB09)

ActionListener

• Listener interface untuk menerima even aksi pada suatu komponen.

• Class yang mempergunakan even aksi mengimplementasikan sebagai interface

• Menggunakan method addActionListener untuk mendaftarkan aksi ini pada komponen dengan catatan komponen ini mempunyai class addActionlistener method.

Page 5: Pemrograman JAVA (TIB09)

ActionListener (cont)

• Ketika even aksi terjadi, actionPerformed method akan dipanggil

• Contoh implementasiJButton b1 = new JButton(“Tombol”);

b1.addActionListener(this);

.

.

.

c.add(b1);

• Cara yang sama dilakukan pada semua interface evenListener

Page 6: Pemrograman JAVA (TIB09)

AdjustmentListener

• Bereaksi pada perubahan komponen untuk penyesuaian

• Ditambahkan pada komponen dengan method addAdjustmentListener().

• Contoh komponen yang mempergunakan: JScrollBar

Page 7: Pemrograman JAVA (TIB09)

FocusListener

• Listener interface untuk menerima keyboard focus events pada sebuah komponen.

• Didaftarkan pada komponen dengan method addFocusListener()

• Ketika komponen memperoleh atau kehilangan fokus keyboard, metode yang relevan dalam object listener dipanggil dan FocusEvent dikirimkan.

Page 8: Pemrograman JAVA (TIB09)

ItemListener

• Interface listener untuk for menerima item events.

• Didaftarkan pada komponen dengan method addItemListener()

• Ketika sebuah item-selection event terjadi, objek listener itemStateChanged method dipanggil.

Page 9: Pemrograman JAVA (TIB09)

KeyListener

• Untuk menerima keyboard events (keystrokes).

• Dapat mengimplements inteface ini atau dapat juga mengextends abstract KeyAdapter class (overriding only the methods of interest).

• Didaftarkan dengan method addKeyListener()

Page 10: Pemrograman JAVA (TIB09)

KeyListener (cont)

• Sebuah keyboard event di hasilkan ketika sebuah key ditekan, dilepas, ataupun diketik.

• Relevant method pada listener object diminta dan KeyEvent dilewatkan.

Page 11: Pemrograman JAVA (TIB09)

WindowListener

• Untuk menerima aksi atas perubahan pada windows, misal diperbesar, diperkecil, digeser, ditutup

• class dapat mengimplements interface atau meng extends abstract WindowAdapter class (overriding only the methods of interest).

Page 12: Pemrograman JAVA (TIB09)

WindowListener (cont)

• listener object dibentuk dari class ini kemudian mendaftarkan pada windows dengan addWindowListener method.

• Ketika status window berubah, opened, closed, activated or deactivated, iconified or deiconified, relevant method pada listener object diminta, dan WindowEvent dilewatkan

Page 13: Pemrograman JAVA (TIB09)

MouseListener

• listener interface untuk menerima mouse events (press, release, click, enter, and exit) pada sebuah component.

• (untuk melacak pergerakan mouse dan mouse drags gunakan MouseMotionListener.)

• class yang berkepentingan pada proses even mouse dapat mengimplementasikan interface ini

• Cara lain adalah dengan extends abstract MouseAdapter class (overriding only the methods of interest).

Page 14: Pemrograman JAVA (TIB09)

MouseListener (cont)

• Ditambahkan pada komponen dengan method addMouseListener().

• mouse event akan dihasilkan ketika mouse di tekan atau dilepas

• mouse event juga dihasilkan ketika cursor mouse memasuki atau meninggalkan komponen.

• Ketika mouse event terjadi, relevant method pada the listener object diminta, dan MouseEvent dilewatkan.

Page 15: Pemrograman JAVA (TIB09)

MouseMotionListener

• Untuk menerima mouse motion events (untuk clicks dan mouse events lainnya, gunakan MouseListener.)

• Class melakukan implementes ke interface ini

• Cara lain dengan extends abstract MouseMotionAdapter class (overriding only the methods of interest).

Page 16: Pemrograman JAVA (TIB09)

MouseMotionListener

• Didaftarkan pada komponen dengan method addMouseMotionListener()

• mouse motion event dihasilkan ketika when mouse digerakan atau di drag. (banyak events akan dihasilkan).

• Ketika sebuah mouse motion event terjadi, relevant method pada listener object dipanggil dan MouseEvent dilewatkan melaluinya..

Page 17: Pemrograman JAVA (TIB09)

Interface Event Handling

• Untuk mengendalikan Event menggunakan interface, program listener harus mengimplementasikan satu method yang bernama actionPerformed()public class myClass implements Actionlistener

{

public void actionPerformed(ActionEvent evt)

{

}

}

• Variabel ActionEvent evt meneruskan informasi komponen asal event tersebut.

Page 18: Pemrograman JAVA (TIB09)

Contoh ActionListenerprivate static JButton b1 = new JButton(“Pilih”);

private static JTextField tf = new JTextField(30);

public class myClass extends JFrame implements Actionlistener

{

...

public void actionPerformed(ActionEvent evt) {

Object var_id = ev.getSource();

if (var_id == b1)

//proses

;

else if (var_id == t1)

//proses

;

}

...

}

Page 19: Pemrograman JAVA (TIB09)

Contoh ComponentListener import javax.swing.*;

import java.awt.event.*;

import java.awt.*;

public class CListener

extends JFrame

implements ComponenListener

{

public Clistener()

{

JLabel teks = new JLabel("Component-listener");

getContentPane().add(teks, "center");

addComponentListner(this);

setVisible(true);

}

public void componentMoved(ComponentEvent ev)

{

System.out.println("Digerakkan");

}

public void componentResized(ComponentEvent ev)

{

System.out.println("Ukuran diubah");

}

public void componentShown(ComponentEvent ev)

{

System.out.println("Tampil");

}

public void componentHidden(ComponentEvent ev)

{

System.out.println("Hidden");

}

public static void main(String args[])

{

new CListener;

}

}


Top Related