GRAPHYCAL USER INTERFACE

KONSEP GUI 

GUI (Graphical User Interface) adalah antarmuka pada sistem operasi atau komputer yang menggunakan menu grafis agar mempermudah para penggunanya untuk berinteraksi dengan komputer atau sistem operasi.
GUI merupakan antarmuka pada sistem operasi komputer yang menggunakan menu grafis.

 Sejarah Singkat GUI

Pada awal diciptakan, komputer dijalankan dengan menggunakan perintah yang diketik pada layar monitor menggunakan keyboard. Hanya orang2 tertentu sajalah yang bisa mengoperasikan komputer. Akhirnya para ahli terdorong untuk dapat menciptakan sesuatu yang dapat digunakan oleh orang kebanyakan dengan cara yang praktis dan mudah diingat. Kemudian lahirlah yang disebut GUI (yang seperangkat aplikasinya menampilkan semua menu, ikon dan alat penunjuk lain yang menggantikan perintah ketik di shell. Hal ini membuat pengguna komputer menjadi lebih mudah untuk mengoperasikan sebuah perangkat dari pada mengingat perintah yang menggunakan teks pada sebuah kotak command tertentu. GUI pertama kali digunakan pada komputer yang diproduksi oleh APPLE yaitu Machintos dengan steve Jobs sebagai penggagasnya.

 Keuntungan GUI
  • Menarik Minat Pengguna : Menggunakan ikon grafik dapat mempermudah dan mengurangi kobesanan pengguna pada waktu menggunakan komputer
  • Memudahkan pengguna : Pengguna lebih mudah memahami apa yang dipaparkan tanpa perlu banyak membaca
  • Memahirkan Pengguna Dengan Cepat : Cara memanipulasi objek pada screen adalah sama dalam setiap aplikasi yang berlainan masa latihan 
  • Pengguna yang Singkat : Karena pengguna GUI  telah memudahkan pengguna aplikasi maka pengguna dapat mengurangi masa latihan dan dapat belajar atau latihan dengan menggunakan aplikasi yang baru 
  • Resolusi Gambar yang Tinggi : Dengan menggunakan GUI maka kita dapat menggunakan gambar atau tulisan yang bisa menghasilkan sampai dengan 256 warna 

Kekurangan GUI  

  • Memakan memori yang sangat besar
  • Bergantung pada perangkat keras
  • Memmbutuhkan banyak tempat pada layar komputer
  • Tidak fleksibel
KOMPONEN DASAR GUI

Dalam perkembangannya java sudah menngembangkan berbagai macam komponen, dan yang terakhir di beri nama Java Swing, pertama java menggembangkan proyek yang di beri nama Java Foundation Classes (JVC), dalam JVC pertama java menggeluarkan AWT(Abstract Window Toolkit), setelah terus berkembang java mengeluarkan ersi yang lebih baru yang di beri nama Java Swing.

Akan saya bahas satu2 tentang komponen2 yang sering di pakai dalam membuat program sederhana

1. Label

Label berfungsi untuk menuliskan sesuatu di frame yang kita buat, nama default JLabel

2. Button

Button digunakan untuk mengeksekusi sebuah perintah, jika button di pencet maka proses akan berjalan, nama default JButton

3. Text Field

Text Field marupakan salah satu cara untuk  mengisikan suatu inputan dalam program, nama default JTextfield

4. Text Area

Text Area biasanya digunakan untuk menampilkan hasil output dari program, nama default JTextarea

5. Combo Box

Combo Box merupakan salah satu cara inputan juga. jika combo box di pencet, maka akan keluar berbagai pilihan untuk di proses, nama default JCombobox

6. Radio Button

radio button juga salah satu cara inputan dalam program, tetapi dalam penggunaannya berbeda dengan combo box, radio button digunakan jika pilihan yang di sediakan sedikit, maka akan lebih efektif jika menggunakan radio button, berbeda dengan combo box yang hjerus click 2 kali untuk memilih, radio button cukup sekali pilihan, dan hanya boleh satu pilihan yang di pilih, maka digunakan radio button group agar hanya satu yang bisa di pilih, nama default JRadiobutton

7. Check box

Check box juga merupakan salah satu cara inputan, mirip dengan radio button, tetapi check box memperbolehkan user untuk memilih lebih dari satu pilihan, jadi check box di gunakan untuk menjawab petanyaan yang memperbolehkan lebih dari satu jawaban, nama defaultnya jCheckbox.

HIRARKI CLASS GUI

Komponen Swing

  • Top Level Container : merupakan container dasar dimana komponen lainya diletakkan
  • Intermediate Container : kontainer pertama dimana komponen lain diletakkan

Pemrograman Berorientasi Objek 4

Komponen Swing

  • Atomic Component : Komponen yang memiliki fungsi spesifik dan menerima interaksi langsung dari pengguna.
  • Layout Manager : digunakan untuk mengatur tataletak dan posisi komponen dalam kontainer.

Komponen GUI akan ditampilkan dalam hirarki container dan menjadikan top level container sebagai container root nya. Setiap komponen GUI hanya dapat dimuat pada satu top-level container. Dan setiap top-level container memiliki satu content pane yang berisi komponenkomponen GUI

Container Hierarky


  • Setiap komponen GUI berbasis swing paling tidak memiliki satu container hierarky dengan JFrame sebagai rootnya.
  • Jika sebuah aplikasi memiliki satu window utama dan dua dialog artinya aplikasi tersebut memiliki tiga container hierarchy dan juga tiga top-level container
  • Satu container hierarchy memiliki Jframe sebagai root, dan dua yang lain memiliki JDialog sebagai root Pemrograman Berorientasi Objek 9

Kelas JFrame

  • JFrame merupakan top level container yang digunakan untuk menampung komponen pada aplikasi berbasis gui, java memiliki class yang mendukung pembuatan dan pengaturan frame, class frame berada pada paket javax.swing.JFrame.
  • Class JFrame merupakan subclass dari java.awt.frame yang juga masih merupakan subclass dari java.awt.windows,

Properties yang sering digunakan


Intermediate Container

Merupakan container perantara antara Top Level Container dengan Atomic Component.  Contoh

Intermediate Container yang sering digunakan :

  • JPanel
  • JTabbedPane
  • JToolbar, dsb


Class Adapter

Sebuah interface terkadang bisa memiliki banyak metoda dan tidak semua metoda yang dideklarasikan ulang tersebut digunakan dan diberi penangan event (handler). Pendeklarasian ulang metoda dari interface tanpa penanganan event (metoda kosong) merupakan pemborosan waktu dalam pemulisan kode (coding).
Untuk mengatasi hal tersebut, Anda dapat menggunakan kelas adapter. Kelas-kelas adapter adalah kelas yang juga mengimplementasikan interface yang bersesuaian dengan menyediakan implementasi standar untuk semua metoda interface berupa blok kosong tanpa pernyataan.
Karena adapter adalah sebuah kelas, maka obyek pendengar event (event listener) adalah kelas atau inner class yang merupakan turunan langsung dari kelas-kelas adapter tersebut. Adapter adalah kelas yang mengimplementasikan interface yang bersesuaian sehingga secara tidak langsung kelas turunannya sudah mengimplementasikan interface yang bersesuaian pula.
Dengan obyek pendengar event merupakan turunan langsung dari kelas adapter, maka Anda tidak perlu mendeklarasikan ulang semua metoda interface, cukup metoda yang diberi penangan event (handler) saja. Berikut ini adalah tabel dari beberapa kelas adapter:


Kelas-Kelas Adapter Di Java
Kelas-Kelas Adapter
Interfes Yang Diimplementasi
MouseAdapter
MouseListener
MouseMotionAdapter
MouseMotionListener
FocusAdapter
FocusListener
ContainerAdapter
ContainerListener
KeyAdapter
KeyListener
WindowAdapter
WindowListener
ComponentAdapter
ComponentListener


PENANGANAN KEJADIAN EVENT HANDLING

Penanganan Event atau Event Handler ialah kemampuan javascript untuk mendeteksi Event atau kejadian - kejadian yang terjadi di halaman web, kemudian menangani atau melakukan suatu proses jika terdeteksi suatu event. Event di web bisa macam-macam, seperti klik,double klik, menggerakkan mouse, bila pointer mouse berada diatas objek HTML, dan sebagainya.
  • Event Object merupakan object yang mendiskripsikan sebuah event yang di-trigger oleh event source.
  • Event Handler merupakan method yang menerima event object dan melakukan respond yang sesuai dengan event object tersebut.
  • Event Listener merupakan interface yang akan meng-handle event yang terjadi. setiap type event mempunyai interface yang bersesuaian. Listener tersebut harus diimplementasikan oleh class yang akan meng-handle event
  • Event Source merupakan pembangkit / trigger sebuah event objects
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
  • FocusEventTextEvent
  • KeyEvent
  • MouseEvent
  • AdjustmentEvent



KOMPONEN 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.

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.

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.

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.
Pada awalnya, sebuah listener seharusnya diregistrasikan dengan sebuah source sehingga dapat menerima informasi tentang event-event yang terjadi pada source tersebut. Hanya listener yang sudah teregistrasi yang dapat menerima pemberitahuan event-event. Ketika telah teregistrasi, sebuah listener hanya tinggal menunggu sampai event terjadi.
Ketika sesuatu terjadi dengan event source, sebuah event object akan menguraikan event yang diciptakan. Event kemudian ditembak oleh source pada listener yang teregistrasi.
Saat listener menerima sebuah event object (pemberitahuan) dari source, dia akan bekerja. Menerjemahkan pemberitahuan dan memproses event yang terjadi.
Class-Class Event
Sebuah event object mempunyai sebuah class event sebagai tipe data acuannya. Akar dari hirarki class event adalah class EventObject, yang dapat ditemukan pada paket java.util. Immediate subclass dari class EventObject adalah class AWTEvent. Class AWTEvent didefinisikan pada paket java.awt. Itu merupakan akar dari semua AWT-based events.


Berikut ini beberapa dari class-class AWT event.


Komentar

Postingan populer dari blog ini

PENGEMBANGAN BERORIENTASI OBYEK

KOMUNIKASI DENGAN DATABASE