GUI Event Handling Pada Java

GUI Event Handling – Seperti Anda ketahui dalam GUI bisa terdapat beberapa komponen seperti tombol, list, combo box, text area, dan sebagainya. Untuk mengetahui mengenai event handling (penanganan event) pada komponen-komponen tersebut maka Anda harus memahami apa yang dimaksud dengan event itu sebenarnya.

Event adalah objek yang dibuat ketika ada perubahan state (sesuatu yang berubah) pada GUI (Graphical User Interface).

Contohnya, ketika user mengklik tombol maka state dari tombol itu berubah. Hal yang dilakukan user itu memicu terjadinya event dan membuat objek event yang relevan. Atau ketika user mengklik tombol mouse, memasukan teks pada text field, menggerakkan kursor, dan masih banyak lagi tentunya.

Bagaimana Suatu Event Ditangani Pada Java?

Untuk menangani event, Anda harus memahami tentang delegasi event.

Model Delegasi Event

Model delegasi event ini terdiri dari dua bagian, yaitu:

  • Sources atau sumber terjadinya event (ketika event terjadi maka objek event akan di buat)
  • Listener atau yang akan menangani event

Jadi setiap event yang dihasilkan oleh sources itu akan ditangani oleh Listener.

Sources atau sumber terjadinya event itu adalah berbagai komponen yang ada pada GUI. Ketika suatu event terjadi maka event tersebut sebagai objek akan dikirim ke Listener.

Hal penting yang perlu Anda ketahui adalah bahwa semua Listener itu adalah interface.

Java memiliki beberapa tipe event dan juga listener. Setiap tipe dari event tersebut terikat dengan listener yang terkait.

Contoh:

Anda membuat tombol JButton dan menambahkannya ke frame. Ketika Anda menekan tombol itu maka akan memicu event, objek event akan dibuat, dan kemudian objek itu akan dikirim ke listener yang relevan, dalam kasus ini adalah interface ActionListener.

Karena ActionListener ini adalah interface maka method abstract yang dimilikinya harus diimplementasikan untuk menetapkan action atau response yang harus dilakukan ketika event itu terjadi.

Bagaimana, mudah di mengerti bukan?

Tahap Event Handling

Untuk menangani event ada tahap yang harus dilakukan yaitu:

1. Meregisterkan listener ke sources event

Lebih dari satu listener bisa diregistrasikan ke dalam satu sources event. Jadi, ketika suatu event apapun dihasilkan maka listener yang sesuai akan diaktifkan. Kemudian listener tersebut akan menangani event dengan bantuan dari interface yang terkait.

Untuk meregistrasikannya dengan:

2. Mengimplementasikan method dari listener

Apa yang akan terjadi atau dilakukan di setelah terjadi event dapat ditetapkan di dalam method ini.

Class Event Pada Java

Seperti sudah dibahas di atas bahwa event itu adalah sebuah objek dan objek itu dihasilkan dari class. Maka Java sudah menyediakan class-class yang sangat berguna untuk tujuan ini (untuk menghasilkan event) . Berikut iniĀ  class, event, dan interface yang terkait.

NoClassEventInterfaceMehod
1ActionEventButton, MenuItem, ListActionListeneractionPerformed()
2AdjustmentEventComponentAdjstmentListeneradjustmentValueChanged()
3ComponentEventComponentComponentListenercomponentResized(), componentMoved(), componentShown(), componentHidden()
4ContainerEventComponentContainerListenercomponentAdded, componentRemoved()
5FocusEventComponentFocusListenerfocusGained(), focusLost()
6ItemEventCheckBoxItemListeneritemStateChanged()
7KeyEventText componentKeyListenerkeyTyped(), keyPressed(), keyReleased()
8MouseEventPergerakan MouseMouseListener, MouseMotionListenermousePressed(), mouseClicked(), mouseEntered(), mouseExited(), mouseReleased()
9MouseWheelEventPergerakan mouse wheelMouseWheelListenermouseMoved(),
mouseDragged()
10TextEventText componentTextListenertextChanged()
11WindowEventWindowWindowListenerwindowActivated(), windowDeactivated, windowOpened(), windowClosed(), windowClosing, windowIconified(), windowDeiconified()

Contoh Program Event Handling GUI

Berikut ini adalah contoh program sederhana bagaimana suatu event terjadi pada tombol (ketika ditekan) dan ditangani dengan meng-set string pada text area dengan mengimplementasikan ActionListener.

Output:

java GUI event handling button pressed

Cara lain yang bisa Anda lakukan adalah dengan membuat anonymous class yang menghasilkan objek dengan tipe ActionListener dan di-passkan sebagai argumen pada method untuk meregisterkan listener.

Contoh:

Output dari kode program Java itu akan sama dengan output dari kode sebelumnya.

Nah, demikanlah cara GUI event handling pada program Java. Semoga penjelasan ini bisa membantu Anda dan jika dirasa bermanfaat mohon dishare pada teman-teman yang lain.

Be the first to comment

Leave a Reply

Your email address will not be published.


*